QGIS源码下载:https://github.com/qgis/QGIS/releases
Visual Studio 2019安装https://visualstudio.microsoft.com/zh-hans/downloads/
Cmake下载地址:https://cmake.org/download/
Cygwin64下载地址:https://cygwin.com/install.html 下载bison、flex
OSGeo4w下载地址:http://trac.osgeo.org/osgeo4w/ 下载qgis-dev-deps
此处需注意!很多人下载的缺少py3_env.bat和qt5_env.bat,需要用老版安装文件选择http://gwmodel.whu.edu.cn/mirrors/osgeo4w
QGIS源码放在C:\OSGeo4W\QGIS下,并创建build文件夹作为输出目录

点击配置
- set OSGEO4W_ROOT=C:\OSGeo4W64
- call "%OSGEO4W_ROOT%\bin\o4w_env.bat“
- call "%OSGEO4W_ROOT%\bin\py3_env.bat“
- call “%OSGEO4W_ROOT%\bin\qt5_env.bat”
- path %path%;%QtDir%\bin;%OSGEO4W_ROOT%\bin;C:\cygwin64\bin
- set O4W_ROOT=%OSGEO4W_ROOT:\=/%
- set LIB_DIR=%O4W_ROOT%
- set GRASS_PREFIX=%OSGEO4W_ROOT%/apps/grass/grass80
- set INCLUDE=%INCLUDE%;%OSGEO4W_ROOT%\include
- set LIB=%LIB%;%OSGEO4W_ROOT%\lib;%OSGEO4W_ROOT%\lib
- set LIB=%LIB%;%OSGEO4W_ROOT%\lib
- “C:\Program Files\CMake\bin\cmake-gui.exe“(启动cmake)

Could not find PyQt5,报错信息,解决方法,更改环境变量!

C:\Program Files\QGIS 3.16.14\apps\Python39
C:\Program Files\QGIS 3.16.14\apps\qgis-ltr\python;C:\Program Files\QGIS 3.16.14\apps\qgis-ltr\bin;C:\Program Files\QGIS 3.16.14\apps\qgis-ltr\python\qgis;C:\Program Files\QGIS 3.16.14\apps\Python39\lib;C:\Program Files\QGIS 3.16.14\apps\Python39\lib\site-packages;C:\Program Files\QGIS 3.16.14\apps\Python39\DLLs;C:\Program Files\QGIS 3.16.14\apps\Python39\Scripts;
点击Configure生成,点击Generate配置

找到源码位置

用VS2019打开,运行,OK
