• mingw64 构建 Geos


    简述

    在做某个小程序时候用到了QT,而用的Qt是mingw版本的,所以使用mingw构建了一下geos库。

    1、准备工作

    首先需要先安装好mingw,这里直接使用http://www.mingw-w64.org里面下载的安装器。
    下载之后进行安装,根据你的需求,可以选择64位版本或者32位版本。

    如果是安装的mingw32版本的Qt,使用其自带的mingw编译套件也是可以的。

    安装了之后还需要安装cmake这里就不介绍了。
    安装之后进入mingw的安装目录下的bin目录,将其中的mingw32-make.exe拷贝一份,并改名为make.exe

    然后就是下载geos的源码了,直接点击下载http://download.osgeo.org/geos/geos-3.6.1.tar.bz2

    下载之后解压。

    2、生成Makefile

    双击打开mingw安装目录下的mingw-w64.bat,然后进入geos源码目录,新建并进入目录build_mingw
    执行下面语句生成Makefile文件

    cmake -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=Z:/geos_mingw ..

    上面使用了-DCMAKE_BUILD_TYPE=Release指定构建Release版本,如果不指定,则构建debug版本。

    实际上我是在安装的Git自带的MINGW64命令行工具(Git Bash实际上是msys,你也可以自己下载msys安装)下使用的,使用前先使用下面命令将mingw安装路径添加到PATH环境变量中。

    export PATH=$PATH:/C/Program Files/mingw-w64/x86_64-5.4.0-win32-seh-rt_v5-rev0/mingw64/bin/

    生成Makefile的命令是(只是路径风格不一样)

    cmake -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/Z/geos_mingw ..

    其余步骤是一致的。

    生成Makefile后还需要做点工作,就是将build_mingwincludegeos目录下的platform.hversion.h文件拷贝到源码目录下的includegeos目录。

    注意,上面应该是正常的做法,但是会有错误,就是error: 'isnan' was not declared in this scope
    对于这个错误,只需要将源码目录下的includegeosplatform.h.in重命名为platform.h即可(不使用cmake生成的)。

    3、编译

    生成Makefile之后,使用下面命令进行编译

    # 编译
    mingw32-make -f Makefile
    # 安装
    mingw32-make -f Makefile install

    我编译的64位版本下载地址在这里https://www.justbeamit.com/zup5i

    http://www.cnblogs.com/oloroso/p/6762624.html

  • 相关阅读:
    Appuim学习路-Appuim介绍
    mac下将根目录/更改组到普通用户,导致sudo不能用
    shell获取函数的返回值
    grep匹配字符串出现的次数
    python实现测试报告的bug统计
    ios开发者账号、证书相关内容
    java基础三 [深入多态,接口和多态](阅读Head First Java记录)
    java基础二(阅读Head First Java记录)
    mac下搭建appium
    窗口管理器 Openbox 入门指南
  • 原文地址:https://www.cnblogs.com/findumars/p/7124037.html
Copyright © 2020-2023  润新知