VS2019编译GDAL3.0.4源码

工具准备

  1. gdal源码
  2. proj6源码

步骤

一、使用VS2019编译sqlite-3 C++源码

  1. 进入下载sqlite官方网站[https://www.sqlite.org/download.html]下载如图所示两个文件包,本次下载的是64位版本,也可按需下载32位版本。下载完成后解压到本地并包含如图所示4个文件。

    sqlite
    sqlite

  2. 启动VS2019在配置页面新建工程项目,选择 [C++ 空项目] 模板,设置好项目名称后并创建,然后将sqlite3.h和sqlite3ext.h两个文件按图所示加入到项目工程中的头文件中,将sqlite3.c和sqlite3.def两个文件加入到源文件中。

    sqlite
    sqlite
    sqlite

  3. 打开项目属性对话框 ,选择Release配置,平台选择x64,然后在左侧选项卡中按顺序展开 C/C++ -> 预处理器,在预处理器定义处删除原有定义内容,并输入以下内容。

    _USRDLL
    SQLITE_ENABLE_RTREE
    SQLITE_ENABLE_COLUMN_METADATA
    SQLITE_ENABLE_FTS5
    SQLITE_ENABLE_UNLOCK_NOTIFY

    预处理器定义

  4. 在项目属性对话框左侧展开[链接器 -> 输入],右侧模块定义文件处输入"sqlite3.def"

    模块定义文件

  5. 在项目属性对话框左侧展开[配置属性][常规],右侧配置类型选择静态库(ilb).

    修改配置类型

  6. 打开模块定义文件sqlite3.def,并拉到最后一行,并追加 “sqlite3_unlock_notify” 内容

    模块定义文件

  7. 一切配置完成后,使用Release64生成项目,即可在输出目录中看到输出成果

    sqlite

二、使用CMake编译Proj6

  1. 解压PROJ

    proj

三、编译GDAL

  1. 解压GDAL

    gdal

  2. 生成VS项目工程文件(此步骤弃用)

    generate_vcproj

  3. 修改nmake.opt 文件

    搜索并修改项