Windows 10下基於Visual Studio 2019編譯配置GDAL 3.1.4

參考: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.htmlhtm

PROJ 6.3.2:https://proj.org/download.htmlblog

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.hsqlite3ext.hsqlite3.csqlite3.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、libbin文件夾,將SQLite.lib放入lib文件夾中,將sqlite3.hsqlite3ext.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_SQLITE3SQLITE3_INCLUDE_DIRSQLITE3_LIBRARY三個屬性分別賦值SQLite3.exeincludeSQLite3.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的includelib文件夾(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便可運行程序。

相關文章
相關標籤/搜索