编译 Qt6
2024-06-29 00:12:28

编译基础模块 qtbase

Qt 6.5.0 下载:https://download.qt.io/archive/qt/6.5/6.5.0/
我只需要最基础的 UI 开发功能( Core、Gui、Widgets),因此进入 submodules 目录,仅下载 qtbase 模块即可,文件名是 qtbase-everywhere-src-6.5.0.zip
解压后可以查看一下 config_help.txt 文件,有详细的编译命令。
然后创建一个 _build 文件夹,这是为了将临时文件都生成在这里,避免污染源码目录。

1
2
mkdir _build
cd _build

接着根据自身需求配置编译参数,我用的是:

1
..\configure.bat -prefix "D:/Qt6/dist" -platform win32-msvc -debug-and-release -shared -nomake examples -nomake tests -opengl dynamic

配置后依次运行以下命令:

1
2
3
cmake --build . --parallel
cmake --install . --config Debug
cmake --install . --config Release

成功后在 D:/Qt6/dist 目录下就有最终的 SDK 了。

配置 Visual Studio

安装 VS 的开发插件 https://download.qt.io/official_releases/vsaddin/2.9.1/
插件只需要设置一下前面编译好的 Qt 文件夹路径即可。
创建一个工程可正常编译运行,但是发现无法编辑 .ui 文件,语言文件 .ts 也无法编辑,这是因为我们仅编译了 qtbase 模块,它不包含开发工具,开发工具在单独一个模块中,需要编译。
所以再次进入目录 https://download.qt.io/archive/qt/6.5/6.5.0/submodules/,下载 qttools-everywhere-src-6.5.0.zip 文件并解压。
然后也和 qtbase 模块一样,创建一个临时目录

1
2
mkdir _build
cd _build

附加模块的编译方式和 qtbase 不同,它是通过 qtbase 编译生成出的 qt-configure-module.bat 脚本编译的,这也说明了在编译附加模块前必须先编译 qtbase,它是基石。

1
D:\Qt6\dist\bin\qt-configure-module.bat D:\Qt6\qttools-everywhere-src-6.5.0

参数是附加模块的源码目录,配置好后接着执行

1
2
cmake --build . --parallel
cmake --install . --config Release

成功后会在 bin 目录下生成出 designer.exelinguist.exe 文件。这样当我们在 VS 中双击 .ui 文件或 .ts 文件时会启动相应的开发工具。

安装语言文件

编译生成的Qt助手、Qt设计师、Qt语言家程序界面是英文的,因为缺少翻译文件。官方提供了翻译文件下载
https://download.qt.io/online/qtsdkrepository/windows_x86/desktop/qt6_650/qt.qt6.650.win64_msvc2019_64/

找到名字包含 qttranslations 的压缩包就是了,打开压缩包后将 translations 文件夹解压到 Qt 根目录下即可。再次打开Qt助手等程序就是中文了。

安装文档

自己编译的 Qt 是没有文档的,好在官方提供了预编译好的文档,我们只需要直接下载相应的模块文档并解压到 doc 目录下即可。
文档下载:https://download.qt.io/online/qtsdkrepository/windows_x86/desktop/qt6_650_src_doc_examples/qt.qt6.650.doc/

大陆地区镜像站点

当网络不好时,可以从国内的镜像站点下载相关资源

阿里云:https://mirrors.aliyun.com/qt/
清华大学:https://mirrors.tuna.tsinghua.edu.cn/qt/
中国科学技术大学:http://mirrors.ustc.edu.cn/qtproject/
中国互联网络信息中心:https://mirrors.cnnic.cn/qt/

在线安装

还有傻瓜式的在线安装方式:http://download.qt.io/official_releases/online_installers/
在线安装本质就是从上面的站点下载预编译好的文件到本地,目前的6.5.0 版本用的VC 2019编译的,这意味着你的项目所使用的编译器最好和预编译的Qt保持一致。

参考

https://www.cnblogs.com/tcjiaan/p/16575655.html

上一页
2024-06-29 00:12:28
下一页