QGis源码编译

QGis源码编译,第1张

QGis源码编译
  • 版本
  • 首次编译说明
  • 注意事项

版本
QGis 3.24.3
VS2017
CMake 3.23
首次编译说明
  1. 编译前准备
    参照git上的编译说明,准备需要的第三方依赖库。
    https://github.com/qgis/QGIS/blob/master/INSTALL.md
    注:OSGeo4W下载的protobuf模块是用vs2019编译,与本次开发工具VS2017工具集不匹配,需要使用VS2017重新编译,然后替换到OSGeo4W中的相应位置。
  2. 添加qgis-dev.bat脚本信息,根据自己电脑的文件位置,修改配置文件,主要有:
    • WinKits路径
    • VS路径
    • OSGeo4W路径
    • cygwin64路径
    • CMake安装路径
@echo off
set VS150COMNTOOLS = "C:\Program Files (x86)\Microsoft Visual Studio17\Community\Common7\Tools\"
call "C:\Program Files (x86)\Microsoft Visual Studio17\Community\VC\Auxiliary\Build\vcvarsall.bat" x64
set INCLUDE=%INCLUDE%;C:\Program Files (x86)\Windows Kits\Include
set LIB=%LIB%;C:\Program Files (x86)\Windows Kits\Lib
set OSGEO4W_ROOT=D:\work_3DTool_QGis\QGis3.24.3\Git\OSGeo4W64
call "%OSGEO4W_ROOT%\bin\o4w_env.bat"
set O4W_ROOT=%OSGEO4W_ROOT:\=/%
set LIB_DIR=%O4W_ROOT%
path %path%;C:\Program Files (x86)\Microsoft Visual Studio17\Community\VC\Tools\MSVC.16.27023\bin
path %PATH%;C:\Program Files\CMake\bin;D:\work_3DTool_QGis\QGis3.24.3\Git\cygwin64\bin
@set GRASS_PREFIX=D:\work_3DTool_QGis\QGis3.24.3\Git\OSGeo4W64\apps\grass\grass80
@set INCLUDE=%INCLUDE%;%OSGEO4W_ROOT%\include
@set LIB=%LIB%;%OSGEO4W_ROOT%\lib;%OSGEO4W_ROOT%\lib
set LIB=%LIB%;%OSGEO4W_ROOT%\apps\Qt5\lib;%OSGEO4W_ROOT%\lib
set INCLUDE=%INCLUDE%;%OSGEO4W_ROOT%\apps\Qt5\include;%OSGEO4W_ROOT%\include

::c:
::cd C:\Program Files (x86)\Microsoft Visual Studio17\Community\Common7\IDE
::devenv.exe
@cmd

  1. 控制台执行qgis-dev.bat脚本,成功后cmake-gui回车,打开cmake。

  2. 配置cmake。

  3. 修改cmake参数。

  4. 点击Open Project,打开VS2017。

  5. QGis核心模块:
    qgis、qgis_app、qgis_core、qgis_gui、qgis_analysis、qgispython、libdxfrx、qgis_native、 ZERO_CHECK 各模块之间的依赖关系在各子项目中查看。
    其余均为非必须模块,可在工程中移除不编译,但启动QGis程序会提示部分插件缺失。

  6. 将qgis子项目设为启动项,编译必须模块后,VS设置RelWithDebInfo调试启动即可。

注意事项
  1. 项目全部编译约耗时1.5小时,可设置子项目 -> 属性 -> C/C++ -> 常规 -> 多处理器编译加快编译时间。

  2. 后续启动VS编译方法:
    取消qgis-dev.bat脚本中的最后三句注释,运行脚本。(需先设置QGis第三方依赖环境 路径再启动VS,否则编译时可能会因依赖环境出现未知错误)

  3. qgis.exe打包相关依赖dll无需放在exe同目录,exe同目录添加环境路径配置文件qgis.env。路径为qgis.exe的相对路径。

配置文件解析如下:

4. 若修改/添加ui中控件显示名称,还需修改对应翻译文件。路径:./QGis3.24.3/i18n.
qgis_zh-Hans.ts:中文简体
记事本打开,找到修改的控件位置,修改/添加message节点。
重新编译translations子项目。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1498460.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-25
下一篇 2022-06-25

发表评论

登录后才能评论

评论列表(0条)

保存