GDAL(Geospatial Data Abstraction Library)是一个在XMIT许可协议下的开源栅格空间数据转换库。它利用抽象数据模型来表达所支持的各种文件格式。它还有一系列命令行工具来进行数据转换和处理。OGR是GDAL项目的一个分支,功能与GDAL类似,只不过它提供对矢量数据的支持。因此GDAL可以提供对栅格和矢量数据的转换。
官方下载地址为https://trac.osgeo.org/gdal/wiki/DownloadSource。
进入官方下载地址后,右侧区域选择要下载的版本。我这里选择的是gdal-2.3.1。
下来选择图中所标记的这个版本对应的包:
下载完成后,是一个压缩包。
建议解压到D盘根目录下,并将文件夹改名为gdal(因为可以做一些懒人操作),如我解压过的路径为 D:\gdal
找到解压目录中的nmake.opt文件,例如本文的文件路径为:D:\gdal\nmake.opt。然后用VS2015打开(打开方式选择VS)。
修改代码中三个位置:
第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
以管理员身份运行适用于VS2015的X64的本机工具命令提示。具体如下:
右键点击更多->以管理员身份运行(务必以管理员身份运行)。
如果你的VS2015是英文版,请以管理员身份运行x64 Native Tools Command Prompt for VS 2015。
上一步以管理员身份打开了命令提示符,在命令行中一次输入以下三行代码:
cd D:\gdal
d:
nmake /f makefile.vc
编译结束依次执行如下两条命令:
命令1:
nmake /f makefile.vc install
nmake /f makefile.vc devinstall
出现如下图所示安装效果,说明命令2执行成功。
打开安装目录下的文件夹(代码修改的路径)有bin,data,html,lib,include几个文件夹则安装完成。
第一步:
打开vs2015,新建一个 c++ 空项目。然后通过视图->其他窗口->属性管理器,打开属性管理器。
在下图框中的部分,即Microsoft.Cpp.x64.user处右键属性,
第二步:
进入VC++目录中,找到包含目录和库目录。
第三步:
在VC++目录依次添加包含目录、库目录。
如下图所示,包含目录中需添加D:\gdal\include
如下图所示,添加库目录D:\gdal\lib
第四步:
附加依赖项的添加。
在链接器->输入添加附加依赖项,手动输入gdal_i.lib 如下图所示:
如下图所示,添加附加依赖项。
第五步:
依次点击应用->确定。至此,GDAL在VS2015中配置成功了。(切记一定要保存,不然就白添加了)。
第一步:
依次点击计算机->属性->高级系统设置->环境变量->系统变量内的 path 。
双击系统变量中的path。
第二步:
将D:\gdal\bin添加到环境变量中。
第三步:
依次保存。
第四步:
点击确定按钮,为了保险起见,此时应该将电脑重启,才能确保环境变量生效。
#include "gdal_priv.h"
#include
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;
}
如果能够输出如下图所示的结果,代表你的配置成功了。
环境配置实属不易,如果真的帮助到你,还希望能给博主点赞支持一下,配置过程中有问题的,也可以在评论区或者私信和我讨论,谢谢大家。
加油吧 阿超没有蛀牙!