VS2015+Qt5.10编译GIS3.10

本文详细记录了在Windows环境下编译QGIS长期支持版的过程,包括安装Cygwin、下载flex和Bison、安装osgeo4w-setup-x86_64.exe、配置ninja和环境变量,并解决编译过程中遇到的常量换行符错误和64位与32位冲突的问题。通过一步步的配置和设置,最终成功使用VS2015进行编译。
摘要由CSDN通过智能技术生成

这几天一直在摸索着编译QGIS(长期支持版本),把整个编译过程记录下来。

一. 安装Cygwin

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
有可能网络不通畅,上面的地址需要手动添加上去,点击【下一步】

http://cygwin.mirror.constant.com

在这里插入图片描述

在这里插入图片描述
下载flex(词法分析)
在这里插入图片描述
下载Bison
在这里插入图片描述
注意:

  • 以上只需要下载flex和Bison
  • View选择Category
  • 双击skip使之显示出版本号
    所有搜索完成之后,点击【下一步】

在这里插入图片描述
开始下载
在这里插入图片描述
有可能下载会中断,长时间的停滞在某一个进度,需要重新走一遍流程,重新下载,下载的时间比较长!

二、安装osgeo4w-setup-x86_64.exe

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

如果没有出现网址,需要手动添加;

http://download.osgeo.org

网络不稳定的话,重复以上过程多次,才可以正常下载

在这里插入图片描述
直接输入qgis-dev-deps 点击【skip】显示出版本
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三、解压ninja-win文件

把解压的ninja.exe 放到OSGeo4W64\bin目录下面
在这里插入图片描述

四、下载完成之后,在目录下面添加一个path.dat文件

在这里插入图片描述
里面的内容是:

@echo off
set VS140COMNTOOLS = D:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools
call "D:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x64
set INCLUDE=%INCLUDE%;C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Include
set LIB=%LIB%;C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Lib
set OSGEO4W_ROOT=D:\QGIS\OSGeo4W64
call "%OSGEO4W_ROOT%\bin\o4w_env.bat"
call "%OSGEO4W_ROOT%\bin\py3_env.bat"
call "%OSGEO4W_ROOT%\bin\qt5_env.bat"
set O4W_ROOT=%OSGEO4W_ROOT:\=/%
set LIB_DIR=%O4W_ROOT%
path %path%;D:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin
path %PATH%;D:\QGIS\cmake-3.19.2-win64-x64\bin;C:\cygwin64\bin
@set GRASS_PREFIX7=D:/QGIS/OSGeo4W64/apps/grass/grass78
@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
@cmd

注意:

  • 里面的引号都是英文环境下的
  • Cmake中GRASS_PREFIX中可能是GRASS_PREFIX7,而且路径必须是反斜杠“/”
    双击path.bat
    然后输入 cmake-gui
    在这里插入图片描述
    弹出cmake界面。配置下载的QGIS文件夹目录
    首先在根目录下面添加文件夹:build_x64
    在这里插入图片描述
    在这里插入图片描述

点击按钮【configure】
在这里插入图片描述
点击【Finish】
在这里插入图片描述

点击【Generate】,如果配置都正确的话应该是一次就成功,点击【Open Project】
打开VS2015工程

五、编译过程中的问题分析

1.常量换行符
error C2001: 常量中有换行符

另存为,修改编码方式
在这里插入图片描述
在这里插入图片描述

2.fatal error LNK1112: 模块计算机类型“x64”与目标计算机类型“X86”冲突

打开项目的vcxproj文件
搜索里面的:machine:X86 全部改成machine:X64

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

wb175208

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

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

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

打赏作者

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

抵扣说明:

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

余额充值