QT安装、构建套件(MSVC、MinGW)配置
1. QT框架及QT Creator下载
登录QT官网-https://www.qt.io/download。
点击downloads for open source users
在页面最下方,点击Download the QT online Installer。
在安装网页的最下方处有一行小字
“We do recommend you use the online installer for the best installation experience, however if you are looking for offline packages you can get them here”
页面最下方,有 All older versions of QT are available in the archive,点击in the archive.
在列表中找到需要的QT版本,进行下载即可。
2. QT安装注意事项
2.1 安装不同编译器生成的QT库
**QT5的安装包中,不仅包含了QT库的安装包,还包含了QT Creator的安装包,两者会一起安装好。**在安装向导程序执行的过程中,应格外注意select component页面,该页面可以选择要安装的QT库的版本。软件默认勾选了MinGW编译器版本的QT,如果需要用MSVC编译器版本的QT,应勾选MSVC。
2.2 检查构建套件是否配置正确
安装好QT后,打开软件,检查编译环境是否配置好。具体操作为:工具–选项–构建套件(kit),查看kit列表中,自动检测标题下的套件名称旁边是否存在错误提示。
如上图所示,名称旁边出现三角感叹号或者圆形感叹号,说明构建套件的设置有一些问题。鼠标放在图标上,可以查看错误的详细提示。
常见的错误是QT的MSVC套件提示找不到编译器和调试器。
由于QT安装包中,只提供了MinGW编译器的安装包,没有提供MSVC编译器的安装包。这意味着,MSVC编译器和调试器都没有安装到电脑上,因此kit无法自动检测到编译器和调试器。对于MSVC编译器版本的选择,下载的编译器版本应当和生成本地的QT库的编译器的版本一致。
如图表示,系统检测到三个编译器版本的QT库,分别是由MinGW编译生成的QT库,MSVC2015、2017编译生成的QT库。构建套件相当于编译环境设置,套件指定了使用何种QT库、用何种编译工具编译、用何种调试器调试。
2.2.1 下载MSVC编译器
根据官方文档http://doc.qt.io/qtcreator/creator-debugger-engines.html, 可以看到支持的调试器如下:
先到microsoft 网站,下载visual studio 2022生成工具
https://visualstudio.microsoft.com/zh-hans/downloads/
页面下方-适用于Visual Studio 2022的工具标题下,下载visual studio 2022生成工具。
运行生成工具安装包,在选择安装组件的页面里,勾选要安装的msvc编译器版本。
2.2.2 下载CDB调试器
https://developer.microsoft.com/zh-cn/windows/downloads/sdk-archive/
下载window10 SDK安装包
运行安装包,在选择安装组件页面中,只勾选Debugging Tools for windows
2.3 配置编译环境
1.安装好MSVC后,此时选项窗口的编译器选项卡中,应该能自动检测到安装好的编译器了。
编译器默认安装在 C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin。cl…exe是编译器执行程序。
2.点击debugger选项卡,看是否自动检测到CDB调试器。如果没有,尝试重启系统,或者手动添加。
在Qt Creator中新建Debugger:
注:CDB调试器默认路径:C:\Program File(x86) \ Windows Kits\ 10 \ Debugger \ x86 \ cdb.exe
3.在kit选项卡中,配置MSVC版本的QTkit,检查编译器和debugger是否匹配,MSVC配CDB,检查“QTversion”选项中的编译器版本号与配置的编译器的版本号是否一致。
2.4 测试编译套件
选择配置好的套件,看是否能成功构建。
点击左下角的最上面的图标,按下图设置。
编译完成后,设置断点,点击调试按钮,程序停在断点处,证明调试器配置成功。
注意:如果在构建代码时提示:无法运行rc.exe,参考此篇文章
https://blog.csdn.net/halo_hsuh/article/details/104984802
参考文章:
https://blog.csdn.net/Copperxcx/article/details/122540629
https://www.shuzhiduo.com/A/Gkz1PeKQdR/