win10 + vs2017 + gdal2.0.3 编译

本文详细描述了如何在Windows10环境下下载、解压GDAL2.0.3,修改nmake.opt文件以适应VS2017/2015编译器,设置GDAL库路径,并针对不同版本编译Debug和Release版本的过程。
摘要由CSDN通过智能技术生成

1. 下载并解压gdal2.0.3

我的放置目录是:D:\Depend_3rd_party\gdal2\gdal-2.0.3,其中gdal-2.0.3是解压得到的文件夹

2. 修改 nmake.opt 文件

        用notepad++打开nmake.opt文件,修改以下三个部分:

(1)修改C++ compiler的版本

        如果是vs2017,则设置为1910, vs2015则设置为1900,本次安装MSVC_VER=1910。(在第46行)

(2)修改GDAL库安装路径。

        在gdal-2.0.3文件夹旁边新建一个名为install的文件夹,全局路径为:D:\Depend_3rd_party\gdal2\install。设置所以GDAL_HOME = “D:\Depend_3rd_party\gdal2\install”。

新建的install文件夹:

修改nmake.opt的位置(第62行): 

(3)打开win64选项(可以选择)

即将“#WIN64=YES”修改为“WIN64=YES”,如下图所示(在第172行):
 在其他版本中,这个选项可以在命令行中进行设置。

(4)修改PROJ_INCLUDE 和 PROJ_LIBRARY路径

        根据博客[2],GDAL3.0以上版本必须依赖于PROJ库(6.0以上版本),否则会在用GDAL进行坐标转换时报错。

        这里是GDAL2.0.3,可能不需要,在使用GDAL时会不会报错也尚以防未来会用到,这里把这个修改条目加进来了。 在467行左右。

        根据提示,可以在这里添加PROJ的静态链接,也可以在运行的时候以动态链接的形式添加。我这里暂时先没有添加。有需要的时候再添加,并回来修改。

3. 编译GDAL

(1) 打开VS2017的命令行窗口

        要选择指定的这个“适用于VS2017的x64本机工具命令提示”。

转到解压了gdal2.3.1的文件夹中,

(2)输入nmake编译命令。

        以下两种模式二选一:

        1)编译debug版本

        依次执行以下三行命令(需要全部执行才能编译完全)

nmake /f makefile.vc MSVC_VER=1910 WIN64=YES DEBUG=TRUE
nmake /f makefile.vc install MSVC_VER=1910 WIN64=YES DEBUG=TRUE
nmake /f makefile.vc devinstall MSVC_VER=1910 WIN64=YES DEBUG=TRUE

        2)编译release版本 

        依次执行以下三行命令(需要全部执行才能编译完全)

nmake /f makefile.vc MSVC_VER=1910 WIN64=YES RELEASE=TRUE
nmake /f makefile.vc install MSVC_VER=1910 WIN64=YES RELEASE=TRUE
nmake /f makefile.vc devinstall MSVC_VER=1910 WIN64=YES RELEASE=TRUE

        注:上面的步骤2已经修改了 MSVC_VER 和 WIN64 两个参数,为了保险起见,此处输入的指令还是添加了“MSVC_VER=1910 WIN64=YES”两个参数。

(3)编译完成

        install文件夹内的情况如下:

参考:

[1] WIN10系统下GDAL(2.3.1)的安装及VS2017中GDAL的配置_gdal203.dll-CSDN博客

[2] 基于VS2017编译配置GDAL教程_vs2017配置gdallibrary库_Chaoying.的博客-CSDN博客

 


 


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值