You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows64下用VS2019从GitHub构建GDAL遇依赖缺失问题

VS2019编译GDAL源码:依赖缺失及PROJ/SWIG配置方案

一、优先用vcpkg批量解决依赖

GDAL依赖的ZLIB、OpenSSL、LibXml2、PROJ(≥6.0)等大部分库,用vcpkg一键安装最省心,还能自动处理路径:

  • 安装vcpkg后,执行命令:
    vcpkg install gdal[core,mysql,sqlserver,curl,openssl,proj]:x64-windows
    
    (按需去掉不需要的feature,比如不用MySQL就删掉mysql)
  • 执行vcpkg integrate install,让CMake自动识别vcpkg安装的库,之后构建时不用手动配置路径。

二、PROJ库手动配置(不用vcpkg时)

  1. 下载≥6.0的PROJ预编译包(或自己用CMake编译源码),解压到本地路径,比如D:\libs\proj-9.2.0
  2. CMake GUI中:
    • 找到PROJ_INCLUDE_DIR,指向D:\libs\proj-9.2.0\include
    • 找到PROJ_LIBRARY,指向D:\libs\proj-9.2.0\lib\proj.lib(Debug版选proj_d.lib)
  3. 命令行直接指定:
    cmake -G "Visual Studio 16 2019" -A x64 -DPROJ_INCLUDE_DIR=D:\libs\proj-9.2.0\include -DPROJ_LIBRARY=D:\libs\proj-9.2.0\lib\proj.lib ..
    

三、SWIG库配置

  1. 下载Windows版SWIG包,解压到本地,比如D:\tools\swigwin-4.1.1
  2. CMake GUI中找到SWIG_EXECUTABLE,指向D:\tools\swigwin-4.1.1\swig.exe
  3. 命令行指定:
    cmake -G "Visual Studio 16 2019" -A x64 -DSWIG_EXECUTABLE=D:\tools\swigwin-4.1.1\swig.exe ..
    

四、处理其他依赖缺失

  • 如果不需要某些功能(比如MSSQL、MySQL),直接在CMake里禁用对应选项:设置WITH_MSSQLNCLI=OFF、WITH_MYSQL=OFF,跳过这些库的检查
  • 确实需要的依赖,优先用vcpkg安装,或者下载预编译包,在CMake中指定XXX_INCLUDE_DIR和XXX_LIBRARY参数

五、完整CMake构建流程

  1. 在GDAL源码目录外新建build文件夹(比如D:\gdal\build)
  2. 打开CMake GUI,设置源码路径为GDAL根目录,构建路径为build文件夹
  3. 点击Configure,选择Visual Studio 16 2019和目标平台(x64/x86)
  4. 解决依赖提示后,点击Generate生成VS工程
  5. 打开生成的GDAL.sln,选择Debug/Release模式,编译ALL_BUILD目标

内容的提问来源于stack exchange,提问作者Nithya

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 15:40:25