【已解决】安装gdal1.10.0过程

环境 

Win7 x64,VS2015,gdal1.10.0

说明:本教程适用于gdal1.10.0,其他gdal版本仅供参考。
本教程已在Win7 32位系统、Win10 64位系统上测试通过。

准备

下载gdal1.10.0
官网下载:https://gdal.org/ (1.10.0版本需从github仓库中下载)
第三方下载:https://trac.osgeo.org/gdal/wiki/DownloadSource
CSDN下载:https://download.csdn.net/download/wingrez/12532129

下载完成解压之后,在根目录下找到nmake.opt,打开它修改其中的GDAL_HOME路径,比如
GDAL_HOME = "D:\software\gdal-1.10.0\bld"

安装过程

1、打开“VS2015 x86 本机工具命令提示符”;
2、在命令行中使用cd命令进入gdal目录;
3、依次执行如下3条命令:

nmake /f makefile.vc 
nmake /f makefile.vc install
nmake /f makefile.vc devinstall

注意:在每条命令执行完成后,没有ERROR,再执行下一条命令。如果有ERROR,可以参考下文的问题解决。解决完问题之后,重新执行该条命令。

4、此时可以看见在GDAL_HOME路径下,生成了一些文件,如bin、include、lib。

问题解决

问题:warning C4005: “snprintf”: 宏重定义
解决:在gdal目录下的port文件夹中找到cpl_config.h,修改其中的snprintf定义,修改后的结果如下加粗部分

#define HAVE_VPRINTF 1
#define HAVE_VSNPRINTF 1
#define HAVE_SNPRINTF 1
#if defined(_MSC_VER) && (_MSC_VER < 1500)
# define vsnprintf _vsnprintf
#endif
// #define snprintf _snprintf
# if defined(_MSC_VER) && (_MSC_VER < 1900)
# define snprintf _snprintf
# endif

问题:odbccp32.lib(dllload.obj) : error LNK2019: 无法解析的外部符号 __vsnwprintf_s,该符号在函数 _StringVPrintfWorkerW@20 中被引用
解决:在gdal目录下,修改nmake.opt文件中的ODBCLIB,修改后的结果如下粗体部分
ODBCLIB = legacy_stdio_definitions.lib odbc32.lib odbccp32.lib user32.lib

如果仍有其他问题,可在评论区留言。

在VS中使用 

1、在项目属性中VC++目录中,添加包含目录和库目录,比如:
包含目录:D:\software\gdal-1.10.0\bld\include;
库目录:D:\software\gdal-1.10.0\bld\lib;

2、在项目属性中链接器->输入中,添加附加依赖项:
附加依赖项:gdal_i.lib;

3、如果提示未找到gdal110.dll,那么将gdal安装后生成的bin目录下的gdal110.dll文件复制到项目的Debug目录下。

 

你可能感兴趣的:(【已解决】安装gdal1.10.0过程)