开源GIS库GDAL/GEOS在Windows下的编译与 Codeblocks配置

来源:互联网 发布:mysql 快照读有什么用 编辑:程序博客网 时间:2024/04/30 12:12
最近在研究开源GIS库GDAL,我是采用自己下载源码编译的方式,主要进行以下几个步骤:
  1. 编译GEOS,参考自GEOS的wiki
    下载GEOS源代码,目前的版本为3.5.0,解压到C盘根目录。打开VS2012自带的命令行工具
  2. 进入geos文件夹,进行编译
    1
    2
    3
    4
    C:
    cd geos-3.5.0
    augogen.bat
    nmake /fmakefile.vc MSVC_VER=1400 BUILD_DEBUG=YES
    最后一句命令里的1800指的是Visual Studio的版本号,详情见GEOS说明。
  3. 下载GDAL源代码,目前最新版为2.0.1,Windows版本的下载地址为http://download.osgeo.org/gdal/2.0.1/gdal201.zip

    下载以后解压,解压到C盘根目录,并且在根目录下新建一个文件夹gdal-runtime,用作存放编译结果:

  4. 进入gdal-2.0.1,打开nmake.opt文件,找到GDAL_HOME,把值改为上一步gdal-runtime的路径.

    找到MSVC_VER把值改为当前Visual Studio对应的版本,我用的是VS2013,值是1800

    找到# Uncomment for GEOS support,把下面三行最前面的 '#' 符号删掉(取消注释),将"GEOS_DIR="后面的内容改为GEOS的路径,并且将"GEOS_CFLAGS ="和 "GEOS_LIB     =" 后面的斜杠 '/' 换为反斜杠 '\' "source"改为"src",保存;

    注意:如果提示找不到"geos/version.h",则需要将geos目录下的include路径加入到系统的include变量里:

    gdal1.6及之前的貌似还需要更改源文件,2.0.1不用

  5. 打开Visual Studio自带的命令行工具:

    进入gdal文件夹,cd "C:\gdal-2.0.1",依次执行以下命令(需要一点时间):

  6. nmake /f makefile.vcnmake /f makefile.vc installnmake /f makefile.vc devinstall

     编译好以后会在“C:\gdal-runtime”生成以下的文件夹,代表编译成功

  7. 新建CodeBlocks工程,将上一步“C:\gdal-runtime\bin”目录下的gdalxxx.dll拷贝到工程根目录下

    打开Project-Build Options菜单,在Linker Settings下的Link Libraries中添加“C:\gdal-runtime\lib\gdal_i.lib"

    "Search directories-Complier"中添加路径"C:\gdal-runtime\include",在"Search directories-Linker"中添加"C:\gdal-runtime\lib"

  8. 到这里就配置完成了,以下是一些常见的问题:

    1.如果提示找不到nmake,需要将nmake所在的文件夹"C:\Program Files\Microsoft Visual Studio 12.0\VC\bin"加入到系统路径,然后重新打开命令行

    2.若调用nmake编译时提示"找不到 stdio.h",则需要在系统变量INCLUDE(如果不存在,则新建)中添加Windows SDK和Visual Studio的include路径

    3.如果提示"rc"变量错误,在执行nmake之前需要先执行"C:\Program Files\Microsoft Visual Studio 12.0\VC\bin\vcvars32.bat"

0 0