1.下载GDAL
在官网上直接下载就可以了,我使用的版本是gdal-2.0.2
2.解压,注意不要使用中文路径 新建文件夹build_vs2015_x64/install
3.编辑nmake.opt
打开文件 gdal-2.0.2\gdal\nmake.opt
- Line46改为: MSVC_VER=1900
- Line62修改GDAL_HOME地址:GDAL_HOME = "F:\vs2015\osg_build\build_step\gdal-2.0.2\gdal\build_vs2015_x64\install"
GDAL_HOME:表示编译完成之后的结果保存到这个目录下面。
- Line172去掉# : WIN64=YES
因为我们需要编译64位版本 - 添加proj4库
PROJ_INCLUDE = -IF:\vs2015\osg_build\build_step\proj-4.9.1\src
!IFDEF DEBUG
PROJ_LIBRARY = F:\vs2015\osg_build\build_step\proj-4.9.1\build_vs2015_x64\lib\Debug\proj_4_9_d.lib
!ELSE
PROJ_LIBRARY = F:\vs2015\osg_build\build_step\proj-4.9.1\build_vs2015_x64\lib\Release\proj_4_9.lib
!ENDIF
5. 添加Geos库
GEOS_DIR=F:\vs2015\osg_build\build_step\geos-3.5.0
GEOS_CFLAGS = -I$(GEOS_DIR)/capi -I$(GEOS_DIR)/include -DHAVE_GEOS
!IFDEF DEBUG
GEOS_LIB = $(GEOS_DIR)/build_vs2015_x64/lib/Debug/geos_c.lib
!ELSE
GEOS_LIB = $(GEOS_DIR)/build_vs2015_x64/lib/Release/geos_c.lib
!ENDIF
4.使用nmake编译
- 打开VS2015 x64命令行工具,使用以管理员身份运行
输入命令,进入到根目录下:
第一次输入,编译Relaea版本:
nmake /f makefile.vc
若编译Debug版本:
nmake /f makefile.vc DEBUG=1
没有生成成功!
第二次输入:
编译出错:
F:\vs2015\osg_build\build_step\geos-3.5.0/capi\geos_c.h(60): fatal error C1083:
无法打开包括文件: “geos/version.h”: No such file or directory
ogrlinestring.cpp
F:\vs2015\osg_build\build_step\geos-3.5.0/capi\geos_c.h(60): fatal error C1083:
无法打开包括文件: “geos/version.h”: No such file or directory
ogrpolygon.cpp
F:\vs2015\osg_build\build_step\geos-3.5.0/capi\geos_c.h(60): fatal error C1083:
无法打开包括文件: “geos/version.h”: No such file or directory
ogrgeometry.cpp
F:\vs2015\osg_build\build_step\geos-3.5.0/capi\geos_c.h(60): fatal error C1083:
无法打开包括文件: “geos/version.h”: No such file or directory
ogrcurvepolygon.cpp
F:\vs2015\osg_build\build_step\geos-3.5.0/capi\geos_c.h(60): fatal error C1083:
无法打开包括文件: “geos/version.h”: No such file or directory
解决方案:
把文件:F:\vs2015\osg_build\build_step\geos-3.5.0\include\geos\version.h.vc最后两个字母去掉改为:version.h
再重新编译
重新安装一次VS2015,再次编译就成功了,简直是无语了!!!
分别输入一下命令,整理目录
nmake /f makefile.vc install
nmake /f makefile.vc devinstall
经过几分钟后编译成功了,生成目录如下!
aaa