tu
什么是GDAL:
GDAL(Geospatial Data Abstraction Library)是一个读写空间数据(这里的空间数据包括栅格数据和矢量数据)的开源库。它利用抽象数据模型来表述所支持的各种文件格式。它还有一系列命令行工具来进行数据转换和处理。
有很多著名的GIS类产品都使用了GDAL/OGR库,包括ESRI的ArgGIS系列、Erdas2011、Google Earth和跨平台的GRASS GIS系统等。
它具有以下核心功能:
1、提供对多种栅格数据的支持,包括Arc/Info ASCII Grid(asc),GeoTiff (tiff),Erdas Imagine Images(img),ASCII DEM(dem) 等格式。
2、提供对矢量数据格式的读写支持,它所支持的文件格式包括:ESRI Shapefiles, S-57, SDTS, PostGIS,Oracle Spatial, Mapinfo mid/mif , Mapinfo TAB等。
GDAL主页(GDAL — GDAL documentation)
配置GDAL:
1、下载GDAL:
打开网站:Index of /gdal/,选择对应想要下载的GDAL版本。以2.3.1为例,下载图中圈出的压缩包。
图1
下载成功后将其解压到所选盘的根目录。本文以E盘为例。
2、修改源代码:
在解压的文件夹中搜索nmake.opt,选择位于gdal文件夹下的该文件,如图2所示,红色方框中为目标文件。
图2
右键打开方式,选择自己的VS打开。
1、在第41行,将MSVC_VER=1900改为自己VS版本所对应的MSVC_VER。
对应表见:MSC_VER 对应vs版本_msvc 14.3-CSDN博客
//2024 .12.29
//发现一个错误,好像这个MSC_VER版本号对应并不正确,可以使用以下代码来查看自己对应的MSC_VER
#include <iostream>
using namespace std;
int main() {
int num = _MSC_VER; // get the version
cout << "My MSVC version is: " << num << endl;
return 0;
}
2、第57行修改为:
GDAL_HOME = "E:\gdal"
3、第184行修改为:
WIN64=YES
3、编译GDAL:
在开始菜单的所有应用里找到x64 Native Tools Command Prompt for VS 2022,右键以管理员身份运行。
图3
随后依次输入以下代码:
E:
cd \gdal
nmake /f makefile.vc
其中,E:表示进入gdal解压后的盘,cd \gdal表示进入当前盘中的gdal文件夹。
成功运行完后依次输入以下代码:
nmake /f makefile.vc install
nmake /f makefile.vc devinstall
4、配置环境:
打开VS2022,创建一个空的cpp项目,选择视图——>其他窗口——>属性窗口——>属性页。如图4所示。
图4
随后按图5至图6红框部分修改属性。
图5
图6
代码依次为:
E:\gdal\include
E:\gdal\lib
gdal_i.lib
依次点击确定。
5、配置环境变量:
在开始菜单中搜索“环境”,打开“编辑系统环境变量”,在系统变量中的“path”处,添加 E:\gdal\bin
图7
依次点击确定。随后重启电脑。
6、验证安装是否成功:
创建一个新项目,输入:
#include"gdal_priv.h"
若编译器未提示错误,则说明安装成功。