GDAL在VS2015上编译及常见错误分析

来源:互联网 发布:航拍视频剪辑软件 编辑:程序博客网 时间:2024/05/16 12:26

说实话,gdal在windows上的编译真的让人头疼,它有各种版本的问题,以前用vs2010编译过一次,这次又一次搞了好久。。。。因此记录以来,常见的错误点。

1. 下载gdal-2.03并解压

a. 其他版本的应该也可以,这里可以看一下nmake.opt文件中是否支持vs2015
b. 打开nmake.opt文件,将WIN64=YES前的#去掉

2. 打开 vs2015 命令行,这里选择的是x64 x86兼容的那一个

这里写图片描述

a.打开到自己安装的gdal目录
b.分别输入下面的命令
nmake -f makefile.vc
nmake -f makefile.vc install
nmake -f devinstall

这个地方是非常容易出错的,往往令人头疼的。

  1. 配置VS

a. 打开VS选择空项目,控制台应用程序
b. 打开属性界面,添加C:\warmerda\bld\include文件,如下图所示,在C/C++常规中添加附加包含目录, 也就是上面编译出来的文件,默认在c:/warmerda中.
c. 在连接器的常规中添加附加库目录C:\warmerda\bld\lib
d. 同样l链接器的输入项目在附加依赖项中添加gdal_i.lib

这里写图片描述

完成后添加如下代码测试:

#include "gdal_priv.h"#include<iostream>using namespace std;int main(){    GDALAllRegister();    const char* pszFile = "cute.jpg";    GDALDataset *poDataset = (GDALDataset*)GDALOpen(pszFile, GA_ReadOnly);    if (poDataset == nullptr)        cout << "can not open file" << endl;    cout << poDataset->GetRasterXSize() << "," << poDataset->GetRasterYSize() << endl;    system("pause");    return 0;}

注意事项:

  1. 将vs模式改为Debug版本64位。
  2. 如果说缺少dll文件,其在C:\warmerda\bld\bin将其复制到项目下的exe类型的文件目录中。

运行,如果不出错,则完成配置。

0 0
原创粉丝点击