2. Windows+Msys2+QGis3.36.1编译运行

前言

  • 本章讲述在Windows Msys2环境下,编译QGis3.36.1可执行程序
  • 注意不同于常规的Windows+Vs编译,本教程使用的是Windows+Msys2
  • 使用Windows+Msys2的好处是可以在调试QGis源码==,二次开发可以调试QGisQGis C++插件也可以进行调试

QGis3.36.1编译运行

在这里插入图片描述

安装依赖

  1. 安装QGis依赖包
pacboy -S protobuf:p gdal:p libzip:p qca-qt5:p gsl:p exiv2:p hdf5:p libxml2:p netcdf:p opencl-icd:p pdal:p proj:p qt5-3d:p qt5-base:p qt5-declarative:p qt5-gamepad:p qt5-location:p qt5-serialport:p qt5-svg:p qtkeychain-qt5:p qtwebkit:p qscintilla-qt5:p qwt-qt5:p spatialindex:p cc:p cmake:p ninja:p opencl-clhpp:p qt5-tools:p python:p ccache:p

在这里插入图片描述

  1. 安装flex bison
    pacman -S flex bison
    在这里插入图片描述

  2. 其他需要安装的依赖
    pacman -S mingw-w64-ucrt-x86_64-gdb mingw-w64-ucrt-x86_64-pyqt-builder mingw-w64-ucrt-x86_64-pyqt5-sip mingw-w64-ucrt-x86_64-sip mingw-w64-ucrt-x86_64-draco mingw-w64-ucrt-x86_64-python-qscintilla-qt5

在这里插入图片描述
在这里插入图片描述

编译

  1. 切换到源码目录 cd "C:\Users\t\Documents\work\QGIS-final-3_36_1\build"
    在这里插入图片描述

  2. 执行Configure命令

cmake \
-G"Ninja" \
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
-DPython_EXECUTABLE=${MINGW_PREFIX}/bin/python \
-DWITH_3D=ON \
-DWITH_PDAL=OFF \
-DWITH_CUSTOM_WIDGETS=ON \
-DQWTPOLAR_LIBRARY=${MINGW_PREFIX}/lib/libqwt-qt5.dll.a \
-DQWTPOLAR_INCLUDE_DIR=${MINGW_PREFIX}/include/qwt-qt5 \
-DWITH_INTERNAL_QWTPOLAR=OFF \
-DWITH_BINDINGS=ON \
-DWITH_GRASS=OFF \
-DWITH_DRACO=OFF \
-DUSE_CCACHE=ON \
-DCMAKE_BUILD_TYPE=Debug \
-DCMAKE_INSTALL_PREFIX=C:/qgis_bin \
-S . \
-B build
  • 注意
  • WITH_BINDINGS 是python相关,如果想用Processing菜单中Toolbox,需要设置为=ON
  • CMAKE_INSTALL_PREFIX设置install的目标目录
    在这里插入图片描述
  1. 执行编译命令 cmake --build build
  • 开始编译
    在这里插入图片描述
    在这里插入图片描述

运行

  • python可以正常运行
    在这里插入图片描述

安装

cmake --install build
  • 编译出来Include lib等二次开发库
    在这里插入图片描述
    在这里插入图片描述

遇到的问题

  1. 编译报错
    在这里插入图片描述

  2. 启动qgis报错
    在这里插入图片描述
    在这里插入图片描述

  3. qgis启动界面过了之后,报python错误
    在这里插入图片描述

  4. qgis启动之后,发现Processing的插件没有正常加载
    在这里插入图片描述

如何解决这个问题呢?请看后边的章节

总结

  • 介绍了在Windows Msys2环境下编译运行QGis
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

雷动软件工作室

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值