操作系统:Win10
开发平台:VS2015
CMake版本:CMake 3.22.0-rc3
SQLite Download Page
根据需要选择对应版本即可,这里我下载的是sqlite-3360000版本。
在任意一个目录下,手动创建一个文件夹命名为ThirdParty,存放src源代码和install生成的文件。
1)手动创建一个空的Win32控制台程序;
2)将sqlite3.c、sqlite3.h、sqlite3ext.h、sqlite3.def四个文件添加到工程中;
3)设置预定义处理;
属性 --->>> C/C++ --->>> 预处理器 --->>> 预处理器定义中添加如下,
_USRDLL
SQLITE_ENABLE_RTREE
SQLITE_ENABLE_COLUMN_METADATA
SQLITE_ENABLE_FTS5
SQLITE_ENABLE_UNLOCK_NOTIFY
4)设置模块定义文件
链接器 --->>> 输入 --->>> 模块定义文件:sqlite3.def
用文本编辑打开sqlite3.def在最后追加:sqlite3_unlock_notify;
6)配置类型改为静态库lib库
配置属性 --->>> 常规 --->>>项目默认值 --->>>配置类型:静态库lib
7)编译
生成sqlite3.lib;
1)sqlite-amalgamation-3360000中复制sqlite3.h、sqlite3ext.h到include;
2)sqlite-dll-win64-x64-3360000中复制sqlite3.dll到dll;
3)sqlite-tools-win32-x86-3360000复制sqlite3.exe到bin;
Download — PROJ 8.2.0 documentation
根据需要选择对应版本即可,这里我下载的是proj-6.3.0版本。
1)手动创建proj-6.3.0,并将以上编译的SQLite3版本中sqlite3_install拷贝到proj-6.3.0目录;中;
2)手动创建proj_build和proj_install;
3)在PROJ-6.3目录中新建一个名为build.bat文件。用于执行camke命令行构建Visual Studio 工程;
@echo off
REM 定义SQLite的Include目录变量
set SQLITE3_INCLUDE_DIR="%cd%\sqlite3_install\include"
REM 定义SQLite的Lib路径变量
set SQLITE3_LIBRARY="%cd%\sqlite3_install\lib\sqlite3.lib"
REM 定义SQLite的exe路径变量
set EXE_SQLITE3="%cd%\sqlite3_install\bin\sqlite3.exe"
REM 定义源代码路径路径变量
set src_dir="%cd%"
echo %src_dir%
REM 定义构建VisualStudio工程目录变量
set build_dir="%cd%/../proj4_build"
REM 定义安装目录变量
set install_dir="%cd%/../proj4_install"
REM 创建VisualStudio工程目录
mkdir %build_dir%
REM 创建安装目录
mkdir %install_dir%
REM 定义cmake安装编译的类型
set CMAKE_BUILD_TYPE=Release
REM 定义cmake安装目录
set CMAKE_INSTALL_PREFIX=%install_dir%
REM 回到构建VisualStudio工程目录
cd %build_dir%
REM 调用camke命令行参数
cmake -G "Visual Studio 14 2015" -A x64 -S %src_dir% -B %build_dir% -DSQLITE3_INCLUDE_DIR=%SQLITE3_INCLUDE_DIR% -DSQLITE3_LIBRARY=%SQLITE3_LIBRARY% -DEXE_SQLITE3=%EXE_SQLITE3% -DCMAKE_BUILD_TYPE=%CMAKE_BUILD_TYPE% -DCMAKE_INSTALL_PREFIX=%CMAKE_INSTALL_PREFIX%
pause
1)通过VS2015 x64 本机工具命令指示符,进入命令界面;
2)通过cd命令进入到build.bat文件所在目录;
3)运行build.bat;
4)打开proj_build文件夹下的proj.sln;
Download Source | GEOS
libgeos/geos
根据需要选择对应版本即可,这里我下载的是geos-3.8.0版本。
1)手动创建geos-3.8.0,存放源代码;
2)手动创建geos_build和geos_install;
3)在geos-3.8.0目录中新建一个名为build.bat文件。用于执行camke命令行构建Visual Studio 工程;
@echo off
set src_dir="%cd%"
echo %src_dir%
set build_dir="%cd%/../geos_build"
set install_dir="%cd%/../geos_install"
mkdir %build_dir%
mkdir %install_dir%
set CMAKE_BUILD_TYPE=Release
set CMAKE_INSTALL_PREFIX=%install_dir%
cd %build_dir%
cmake -G "Visual Studio 14 2015" -A x64 -S %src_dir% -B %build_dir% -DCMAKE_BUILD_TYPE=%CMAKE_BUILD_TYPE% -DCMAKE_INSTALL_PREFIX=%CMAKE_INSTALL_PREFIX%
pause
1)通过VS2015 x64 本机工具命令指示符,进入命令界面;
2)通过cd命令进入到build.bat文件所在目录;
3)运行build.bat;
4)打开geos_build文件夹下的GEOS.sln;
Download — GDAL documentation
根据需要选择对应版本即可,这里我下载的是gdal-3.2.0版本。
1)手动创建gdal-3.2.0,存放源代码;
2)手动创建gdal_build和gdal_install;
3)在gdal-3.2.0目录中新建一个名为build.bat文件。用于执行camke命令行构建Visual Studio 工程;
@echo off
cd "%~dp0"
echo %cd%
REM 定义gdal_home
REM 定义gdal_home
set gdal_home="%cd%\..\..\..\gdal-3.2.0_install"
echo %gdal_home%
REM 创建gdal_home目录
mkdir %gdal_home%
REM 定义proj_include
set proj_include="%cd%/cooperation_party/proj-6.3.0_install/include"
REM 定义proj_library
set proj_library="%cd%/cooperation_party/proj-6.3.0_install/lib/proj.lib"
REM 定义sqlite3_include
set sqlite3_include="%cd%/cooperation_party/sqlite3_install/include"
REM 定义sqlite3_library
set sqlite3_library="%cd%/cooperation_party/sqlite3_install/lib/SQLite3.lib"
REM 定义geos_include
set geos_library="%cd%/cooperation_party/geos-3.8_install/lib/geos_c.lib"
REM 定义geos_library
set geos_cflags="%cd%/cooperation_party/geos-3.8_install/include"
echo %geos_cflags%
nmake -f makefile.vc MSVC_VER=1900 WIN64=1 GDAL_HOME=%gdal_home% PROJ_INCLUDE=-I%proj_include% PROJ_LIBRARY=%proj_library% SQLITE_INC=-I%sqlite3_include% SQLITE_LIB=%sqlite3_library% GEOS_LIB=%geos_library% GEOS_CFLAGS=-I%geos_cflags%
nmake -f makefile.vc MSVC_VER=1900 WIN64=1 install GDAL_HOME=%gdal_home% PROJ_INCLUDE=-I%proj_include% PROJ_LIBRARY=%proj_library% SQLITE_INC=-I%sqlite3_include% SQLITE_LIB=%sqlite3_library% GEOS_LIB=%geos_library% GEOS_CFLAGS=-I%geos_cflags%
nmake -f makefile.vc MSVC_VER=1900 WIN64=1 devinstall GDAL_HOME=%gdal_home% PROJ_INCLUDE=-I%proj_include% PROJ_LIBRARY=%proj_library% SQLITE_INC=-I%sqlite3_include% SQLITE_LIB=%sqlite3_library% GEOS_LIB=%geos_library% GEOS_CFLAGS=-I%geos_cflags%
4)在gdal-3.0目录下的gdal目录下新建cooperation_party目录,将前面编译sqlite3_install,Proj4_install,Geos_install目录文件拷贝到cooperation_party目录中;
1)通过VS2015 x64 本机工具命令指示符,进入命令界面;
2)通过cd命令进入到build.bat文件所在目录;
3)运行build.bat;
build.bat中添加了如下命令,所以会自动编译;