Qt SrcCode Build
VS2019编译qt源码
🙆🏻♂️️ 动机
qt5.15早期开源版本存在部分windows设备渲染卡顿、崩溃问题, 需要升级qt版本解决。然而qt6涉及到GPU渲染部分不支持win7和32位所以需要升级qt5.15后期fixed版本。
note: 从qt5.15后opensrc版本不再提供offcial binary, qt官方online installer只能安装qt6.7.1和qt5.15.2之类的早期小版本官方二进制。
-
自己手动编译qt源码。并且遵守qt license相关说明
-
花钱购买Commercial版本。
🏛️️ 准备
-
安装好vs2019确保相关组件正确安装
-
安装jom
nmake
是mscv构建系统, 历史原因只能单核build速度太慢,jom
支持多核并发编译. -
查看qt官方build on windows doc
🏗️️ build
-
根据想要编译的版本32/64 打开对应的终端(一定得确认) 32位打开x86 64位打开x64, 编译过程中可以查看任务管理器cl.exe是否匹配32/64
-
cd到源码解压目录
-
修改qmake工程文件 (note: 不需要符号可以skip)
添加qmake配置 Release版本附带符号
QMAKE_CXXFLAGS_RELEASE += $$QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO QMAKE_LFLAGS_RELEASE += $$QMAKE_LFLAGS_RELEASE_WITH_DEBUGINFO
-
运行
configure -platform win32-msvc -prefix "../5.15.14" -nomake examples -nomake tests -debug-and-release -confirm-license -opensource -skip qtconnectivity -skip qtwebengine -skip qtvirtualkeyboard -qt-zlib -qt-libpng -qt-libjpeg -opengl desktop -mp
可以
configure -h
查看命令说明或者查看options ,模块信息可以对比online installer勾选自行skip 用到哪些编译哪些没有使用的模块不编译提高编译速率. -
configure没有报错后运行jom -j8 开始编译
-
build无误后运行jom install,运行完毕后configure配置的prefix路径下就是生成的产物
☝🏻 使用
-
vs2019使用
添加qt环境变量到path, qtvstools导入路径即可offcial binary使用方式一致
-
qtcreator使用
需要手动关联qtversion和手动添加编译器到qtcreator