参考:html
https://blog.csdn.net/weixin_42141589/article/details/94357199sql
https://trac.osgeo.org/gdal/wiki/BuildingOnWindows#BasicOptionsvisual-studio
https://blog.csdn.net/qq_32153213/article/details/81363588ui
https://blog.csdn.net/qq_36271561/article/details/107082578spa
一、下载并安装Visual Studio Community 2019:https://visualstudio.microsoft.com/zh-hans/thank-you-downloading-visual-studio/?sku=Community&rel=16;.net
二、下载并安装CMake 3.19.0(cmake-3.19.0-rc1-win64-x64.msi):https://cmake.org/download/,Install Options勾选Add CMake to the system PATH for all users,安装完成后打开命令提示符输入 cmake --version 验证配置是否成功;code
三、下载库到各自的目录并解压:sqlite
GDAL 3.1.4:https://gdal.org/download.html;htm
PROJ 6.3.2:https://proj.org/download.html;blog
SQLite 3.33.0(Source Code下的sqlite-amalgamation-3330000.zip,和Precompiled Binaries for Windows下的sqlite-dll-win64-x64-3330000.zip和sqlite-tools-win32-x86-3330000.zip):https://www.sqlite.org/download.html;
四、编译SQLite库:
在SQLite目录下建立空项目并添加sqlite3.h
、sqlite3ext.h
、sqlite3.c
、sqlite3.def
;
右键点击项目-属性,配置选择全部配置,平台选择全部平台,点击配置属性-常规-配置类型-静态库(.lib);
点击
C/C++-预处理器-预处理器定义-编辑添加:
_USRDLL
SQLITE_ENABLE_RTREE
SQLITE_ENABLE_COLUMN_METADATA
SQLITE_ENABLE_FTS5
SQLITE_ENABLE_UNLOCK_NOTIFY
点击连接器-输入-模块定义文件-添加sqlite3.def,
点击应用-肯定;
修改模块定义文件sqlite3.def:在最后追加sqlite3_unlock_notify;
选择配置Release、平台x64,点击生成-生成解决方案以生成静态库SQLite.lib;
在SQLite目录下分别建立include、
lib
和bin
文件夹,将SQLite.lib放入lib
文件夹中,将sqlite3.h
、sqlite3ext.h
放入include文件夹
中,将sqlite-tools-win32-x86-3330000文件夹中的sqlite3.exe
放入bin文件夹
中。
五、编译PROJ库:
在PROJ目录下建立build文件夹,打开CMake在源码位置中打开proj-6.3.2文件夹,在建立位置中打开build文件夹;
点击Configure,选择Visual Studio 16 201九、x64,点击Finish;
配置会出现错误,找到EXE_SQLITE3
、SQLITE3_INCLUDE_DIR
和SQLITE3_LIBRARY
三个属性分别赋值SQLite3.exe
、include
和SQLite3.lib的
路径,赋值CMAKE_INSTALL_PREFIX属性为文件生成目录,点击Configure,完成提示Configuring done,点击Generate,完成提示Generating done,此时build文件夹里存在PROJ4.sln;
打开x64 Native Tools Command Prompt for VS 2019:
cd d:/PROJ/build
msbuild ALL_BUILD.vcxproj /p:Configuration="Release"
msbuild INSTALL.vcxproj /p:Configuration="Release"
六、编译GDAL库:
使用Visual Studio 2019打开nmake.opt文件修改并保存:
在第42行,改成MSVC_VER=
1920(
VS2019版本应该为1920及以上,视本身编译器而定);
在第66行,改成GDAL_HOME=
生成文件的路径;
在第207行,改成WIN64=YES
(若是不生成64位版本则注释本行);
在第234行,改成DLLBUILD=0进行静态编译(动态编译则
为1);
在第254行,找到PROJ_INCLUDE、
PROJ_LIBRARY,
分别设置为PROJ的include
和lib
文件夹(PROJ_INCLUDE=
-I
后为路径),并修改.lib的名字;
在第642行,找到SQLITE_INC、
SQLITE_LIB,
路径设置同上;
打开x64 Native Tools Command Prompt for VS 2019:
cd d:/GDAL/gdal-3.1.4
nmake /f makefile.vc (Debug版添加DEBUG=1)
nmake /f makefile.vc devinstall
七、在Visual Studio 2019项目中配置GDAL库:建立Visual Studio 2019空项目,配置选择全部配置,平台选择全部平台,右键点击项目-属性-
C/C++-附加包含目录-编辑添加GDAL的include文件夹路径,点击连接器-附加库目录-编辑添加GDAL的lib文件夹路径,点击连接器-输入-附加依赖项-编辑添加gdal.lib,
点击应用-肯定,选择配置Release、平台x64便可运行程序。