VS2022编译安装Qt6.8
前言
事情的起因是想在Win11装个Qt。打算装Qt6,然后查了一下发现Qt6不提供离线安装包了,只能用在线安装包安装预编译文件。下载在线安装程序看了一下,随即想起先前在Win10装Qt5.12时痛苦的环境配置经历,只怕一不小心选错哪个组件就用不了,可怜的一点下载流量只能付诸东流。随后得知Qt是可以编译安装的,且所有源代码只有700MB,心想没尝试过编译安装的CSer不是合格的CSer,于是查阅各种文献然后实战,就有了本文。
我使用的系统是Windows 11 22H2,VS版本是2022 17.4.4,打算编译的Qt版本是6.8.0。
获取源码
要编译一个程序,首先要获得它的源码。有三种办法获取Qt6的源码:
- 通过Qt Online Installer安装”Sources“这个组件
- 从Qt的Git仓库获取
- 从https://download.qt.io/下载打包的源码。你也可以到国内的各大开源镜像站(如mirrors.tsinghua.edu.cn)下载。
我使用第三种方法。我使用的下载链接是 https://mirrors.tuna.tsinghua.edu.cn/qt/archive/qt/6.8/6.8.0/single/qt-everywhere-src-6.8.0.zip
源码包的选择:Qt提供两种源码包,所有组件全打在一个包里的,和各种组件分开打包的。根据这篇文章的说法,只安装分开打包的qtbase
包就可以写大多数Qt程序了。而且后续其他组件也可以增量安装,见本文。但是我仍然下载了所有组件全在一起的包。
源码包会提供.tar.xz
和.zip
两种格式的,内容应该是完全一致的。.tar.xz
格式的压缩率会高一些,可以省下一些流量和下载时间。你可以使用7-Zip来解压.tar.xz
文件。
编译前的准备工作
为了编译Qt6.8,你应该具备至少15GB的硬盘空间。源代码大概4GB,编译过程中产生的中间文件可以达到8GB,安装后的文件应该不到1GB。
构建环境准备
你应该预先安装如下工具,且确保它们都在PATH
环境变量中:
- 一个完整支持C++17标准的编译器。在本文中,使用的是VS2022带的msvc143版本。mingw应该也能用,但估计会有疑难杂症。
- 如果你使用Vi