VS2017编译配置GDAL

1、下载GDAL

官方下载地址为https://trac.osgeo.org/gdal/wiki/DownloadSource,我下载的版本是gdal-2.3.1。建议将其解压在某个盘的根目录,比如我的解压地址是D:\gdal-2.3.1,为了方便使用,将解压文件名改为gdal(一定要改!)。

2、修改源代码

找到解压目录中的nmake.opt文件,例如本文的文件路径为:D:\gdal\nmake.opt。然后用VS2017打开,不建议用其他文本编辑器。我一共修改了文件中的三个位置:

第41行的代码修改为:MSVC_VER=1910(根据编译器来确定。1400是指 VS 版本为2010,1800是指 VS 版本为2013,1900是指 VS 版本为2015,1910是指 VS 版本为2017,1921是指 VS 版本为2019)
第57行的代码修改为:GDAL_HOME = "D:\gdal"
修改第184行的代码:原来为# WIN64=YES修改为WIN64=YES


3、以管理员身份运行适用于VS2017的X64的本机工具命令提示

适用于VS2017的X64的本机工具命令提示可以在开始菜单中找到,一定要以管理员身份运行。如果你的VS2017是英文版,请以管理员身份运行x64 Native Tools Command Prompt for VS 2017。

4、编译GDAL

在命令行中依次输入以下三行代码:

cd D:\gdal
d:
nmake /f makefile.vc
开始编译,编译过程需要几分钟。

5、安装GDAL

编译结束继续执行如下两条命令:

nmake /f makefile.vc install
nmake /f makefile.vc devinstall
打开安装目录下的文件夹(代码修改的路径)有bin,data,html,lib,include几个文件夹则安装完成。

6、在VS2017的项目中配置GDAL

打开vs2017,新建一个  c++  空项目。然后通过视图->其他窗口->属性管理器,打开属性管理器。

在如下图的红色框内,右键选择属性。

在VC++目录依次添加包含目录、库目录

再在链接器->输入添加附加依赖项,手动输入gdal_i.lib    如下图所示:

依次点击应用->确定。至此,gdal在VS2017中配置成功了。

7、设置环境变量

依次点击计算机->属性->高级系统设置->环境变量->系统变量内的 path 


点击上图红色框标记的编辑,添加:D:\gdal\bin 

点击确定按钮,为了保险起见,此时应该将电脑重启,才能确保环境变量生效。

8、测试是否配置成功

以下是我从网上找到的一段测试代码,只需要一张jpg格式的图像,然后将代码pszFile = "D:/2.jpg";修改成你自己的图片路径和名字即可。注意:程序需在X64下运行!

#include "gdal_priv.h"
#include<iostream>  
using namespace std;
int main()
{
    const char* pszFile;
    GDALAllRegister();
    pszFile = "D:/2.jpg";
    GDALDataset *poDataset = (GDALDataset*)GDALOpen(pszFile, GA_ReadOnly);
    GDALRasterBand *poBand = poDataset->GetRasterBand(1);
    int xsize = poBand->GetXSize();
    int ysize = poBand->GetYSize();
    cout << xsize << endl;
    cout << ysize << endl;
    system("pause");
 
    return 0;
}


如果能够成功输出图片的尺寸,那么恭喜你大功告成了!

 

博客主要参考了

http://m15989223765.blog.163.com/blog/static/233430095201421725748335/

https://blog.csdn.net/Dragonzxc/article/details/80356883

https://blog.csdn.net/u011574296/article/details/76565703

对这些博主表示真心的感谢,没有他们的付出,我也很难将gdal配置好。
————————————————
版权声明:本文为CSDN博主「长安游」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_32153213/article/details/81363588

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值