windows10 Qt5.15.14 msvc2019 编译部署

Qt 5.15 LTS 的公开支持已于 2023 年 10 月结束。

Qt 5.15.14 是最后一个公开发布的版本。其它往后的版本均为社区维护更新的版本。考虑到军工项目稳定性与交付所以最终选择这个版本。

参考:Windows 10 Qt 5.15.x 源码编译

下载:

Qt源码: qt-everywhere-opensource-src-5.15.14.zip

msvc2019: vs_BuildTools.exe

python3.8: python-3.8.1rc1-amd64.exe 使用高版本可能存在,不兼容问题

安装VS2019

复制代码
运行安装器,选择:
✅ "使用 C++ 的桌面开发"
✅ 勾选 "MSVC v142 - VS 2019 C++ x64/x86 生成工具"
✅ 勾选 "Windows 10/11 SDK"
❌ 不需要勾选 ".NET"、"Python" 等无关组件
  • 选择ATL组件,解决qtspeech模块中缺少头文件问题

解压qt源码。

在开始菜单中找到 Visual Studio 2019 程序组,并运行 x64 Native Tools Command Prompt for VS 2019 命令行工具,切换到源码目录。

创建build目录

bash 复制代码
mkdir build-qt5.15.14-msvc2019-x64
cd build-qt5.15.14-msvc2019-x64

-no-feature-qml-jit 选项是禁用 QML 的 JIT 正则引擎,不然编译会失败。

-skip qtspeech 禁用此模块 可以解决缺少ATL头文件相关编译错误

bash 复制代码
..\qt-everywhere-src-5.15.14\configure -debug-and-release -confirm-license -opensource -platform win32-msvc -prefix "E:\\Qt-Build-5.15.14" -qt-sqlite -qt-pcre -qt-zlib -qt-libpng -qt-libjpeg -qt-freetype -qt-harfbuzz -opengl dynamic -skip qtspeech -skip qtwebengine -nomake tests -no-compile-examples -no-feature-qml-jit

构建安装

bash 复制代码
set CL=/MP;#开启多线程编译
nmake;# -j8
nmake install;

报错: error C2953: "_CrtEnableIf<true,_Ty>": 类模板已经定义 (编译源文件 xxx\qt-everywhere-src-5.15.14\qtdeclarative\src\qml\compiler\qv4codegen.cpp)

解决:检查系统中是否存在多个版本的windows SDK,确保只存在一个版本。如果存在多个删除多余后重启。

相关推荐
丰锋ff10 分钟前
基于 Qt 的智能门禁系统(二)
开发语言·qt
fpcc22 分钟前
跟我学C++中级篇——编译期的条件选择
开发语言·c++
SomeB1oody37 分钟前
【RustyML入门】6.3. 并行归约
开发语言·后端·机器学习·rust·教程
mqiqe2 小时前
AgentScope Java 2.0 协议集成全景解析:A2A、AG-UI、Agent Protocol 三大开放协议实战指南
java·开发语言·ui
lzhdim2 小时前
12、JavaScript常见的内存泄露问题 - JavaScript学习系列文章
开发语言·前端·javascript·学习·ecmascript
脉动数据行情2 小时前
Java 实现台股 TWSE/TPEx 行情采集(个股 + K 线)
java·开发语言·twse·tpex·台股
爱学习的小邓同学2 小时前
Golang --- (1)第一个Golang程序
开发语言·后端·golang
zx_741484813 小时前
【Python 入门】面向对象基础:类、对象、成员变量与构造方法
开发语言·python
liangshanbo12154 小时前
虚拟列表深度面试题整理
java·开发语言·前端
ZISHU_9874 小时前
用 TLabel 给 SynTouch BioTac 数据做语义标注:从原始信号到结构化标注
开发语言·人工智能·python·数据·机器人触觉