这是官方给出的编译指导,但是在实践过程中有几点仍然需要特别注意。

Tip 1:不要使用默认的"VS开发人员命令提示"工具,使用该工具会遭遇如下的错误:

正在创建库 gdal_i.lib 和对象 gdal_i.exp
INK : error LNK2001: 无法解析的外部符号 OGRFeatureStylePuller
INK : error LNK2001: 无法解析的外部符号 OSRValidate
INK : error LNK2001: 无法解析的外部符号 OPTGetProjectionMethods
INK : error LNK2001: 无法解析的外部符号 OGR_G_GetPointCount
INK : error LNK2001: 无法解析的外部符号 OGRRegisterAll
INK : error LNK2001: 无法解析的外部符号 GDALSimpleImageWarp
INK : error LNK2001: 无法解析的外部符号 GDALReprojectImage
INK : error LNK2001: 无法解析的外部符号 GDALComputeMedianCutPCT
INK : error LNK2001: 无法解析的外部符号 GDALDitherRGB2PCT
INK : error LNK2001: 无法解析的外部符号 OCTNewCoordinateTransformation

这是由于x64设置不当引起的,解决方法是使用VS2015 x64 本机命令提示符工具,如下:

这样问题就可以迎刃而解。

Tip 2: 使用VS2015编译会出现如下错误

Creating library gdal_i.lib and object gdal_i.exp

odbccp32.lib(dllload.obj) : error LNK2019: unresolved external symbol _vsnwprintf_s referenced in function StringCchPrintfW

gdal201.dll : fatal error LNK1120: 1 unresolved externals

NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\amd64\link.EXE"' : return code '0x460'

Stop.

解决方案:(感谢:http://blog.csdn.net/piaoyidage/article/details/50426434)

在gdal-2.0.1/make.opt中作如下修改:

把这段内容

!IFDEF ODBC_SUPPORTED
ODBCLIB = odbc32.lib odbccp32.lib user32.lib
!ENDIF

替换成:

!IFDEF ODBC_SUPPORTED
!IF $(MSVC_VER) >= 1900
# legacy_stdio_definitions.lib : https://connect.microsoft.com/VisualStudio/feedback/details/1134693/vs-2015-ctp-5-c-vsnwprintf-s-and-other-functions-are-not-exported-in-appcrt140-dll-breaking-linkage-of-static-libraries
ODBCLIB = legacy_stdio_definitions.lib odbc32.lib odbccp32.lib user32.lib
!ELSE
ODBCLIB = odbc32.lib odbccp32.lib user32.lib
!ENDIF
!ENDIF

为题得以解决。

转载于:https://www.cnblogs.com/litengyao/p/5150272.html

Windows10 + VS2015 环境下对gdal2.0.1进行64bit编译小结相关推荐

  1. mysql8.0卸载出现问题,Windows环境下MySQL 8.0 的安装、配置与卸载

    软件版本 Windows:Windows10 MySQL:mysql-8.0.17-winx64.zip 安装步骤 1.配置环境变量 2.新建my.ini文件 文件位置:C:\Program File ...

  2. 全开源深度学习平台PaddlePaddle入手之路(二)----利用Docker在Windows10专业版环境下配置PaddlePaddle...

    利用Docker在Windows10专业版环境下配置PaddlePaddle 对于PaddlePaddle的安装,查询官网信息,PaddlePaddle提供pip安装和Docker安装运行的使用方式. ...

  3. 安装mysql8.0配置环境_Windows环境下MySQL 8.0 的安装、配置与卸载

    软件版本 Windows:Windows10 MySQL:mysql-8.0.17-winx64.zip 安装步骤 1.配置环境变量 name:Path value:C:\Program Files\ ...

  4. win7能用的matlab,win7环境下使用matlab7.0(R14)方法

    matlab7.0是一款非常强大的工程仿真分析软件,虽说是2004年的版本,但易用性和稳定性仍然不错,所以此版本仍然在各大单位服役.下面是学习啦小编跟大家分享的是win7环境下使用matlab7.0( ...

  5. centos php支持yaf,CentOS环境下给PHP7.0安装yaf扩展

    | CentOS环境下给PHP7.0安装yaf扩展 在CentOS环境下给PHP7.0安装yaf扩展,首先要知道PHP的安装目录在哪里,以我当前的路径为例,在/usr/local/php目录下. 下一 ...

  6. matlab usb cam,Matlab环境下使用USB2.0摄像头编程image acquisition tools(读书笔记) | 学步园...

    (1)Matlab环境下使用USB2.0摄像头编程 Matlab中的图像获取工具箱给我们提供了必要的函数,我们直接调用就可以了,主要就是简单的介绍如何使用该工具箱进行对USB2.0摄像头的编程. TA ...

  7. apache2配置支持php7,Ubuntu14.04服务器环境下配置PHP7.0+Apache2+Mysql5.7的方法

    这篇文章主要介绍了Ubuntu14.04服务器环境下配置PHP7.0+Apache2+Mysql5.7的方法,较为详细的分析了Ubuntu14.04操作系统环境下配置PHP7.0+Apache2+My ...

  8. C++学习日记1:VS2015环境下,创建基于对话框的MFC工程

    VS2015环境下,创建基于对话框的MFC工程 1.新建项目 文件→新建→项目, 确定工程名称,选择工程保存路径, →确定 2.进入[当前项目设置]. →下一步 3.进入[应用程序类型]界面. 设置[ ...

  9. linux websphere 端口号,Linux环境下配置websphere7.0的一些命令

    Linux环境下配置websphere7.0的一些命令! 1.创建概要文件 通过命令行建立Dmgr服务器,进入${WAS_Home}/bin目录,运行 ./manageprofiles.sh -cre ...

最新文章

  1. android 保存textview,为什么没有TextView(带ID)会自动保存它的状态?
  2. 如何攻克异地协作难题?看 Tower 的 72 个月远程工作实践
  3. centos 7.0 查看selinux状态|关闭|开启
  4. Filter过滤要登录的页面(重要)
  5. 链表面试题2:编写代码,以给定值x为基准将链表分割成两部分,所有小于x的结点排在大于或等于x的结点之前
  6. java vector_Java Vector lastElement()方法与示例
  7. Python 之 变量进阶(理解)
  8. TeeChart的坐标轴
  9. VS2010/MFC设置对话框控件的Tab顺序
  10. redis的管理和监控工具treeNMS
  11. python参考手册下载_python学习手册下载|
  12. java查看已导入的证书_jdk导入证书
  13. InstantClient+PLSQL安装配置教程
  14. 课程设计 - 运动控制卡(云服务器)
  15. mobilenet cpu 加速_UP手游加速器苹果版下载安装-UP手游加速器iOS苹果版下载
  16. 使用reaver命令穷举PIN码破解WPA2-PSK加密的无线网络
  17. 大疆网上测评题库_【大疆在线测试有几套题啊?】-看准网
  18. 商标图形也会侵权?商标侵权如何界定
  19. 基于javaweb的校园外卖点餐系统(java+ssm+jsp+mysql)
  20. 基于Python的国际绝对音名标准频率C语言宏定义(32位无符号整型精度、十二等律体系、A4=440.01000Hz)

热门文章

  1. VMware虚拟化--ESXi安装时考虑因素
  2. 铁路网上购票需要完善但值得鼓励
  3. 这些常识一直在损害健康
  4. 定制Eclipse IDE之插件篇(一)
  5. 越过网络层看威胁:为什么全攻击界面才是最重要的
  6. 数据导入报错:Got a packet bigger than‘max_allowed_packet’bytes的问题
  7. sys.argv[]学习
  8. 验证mongodb副本集并实现自动切换primary~记录过程
  9. pcb中几个层的解释
  10. 网络安全系列之五十二 组策略中的软件限制策略