QT Creator配置Kit

0、背景:qt5.12.12+vs2022

记得先增加vs2017编译器

一、症状:

你是否有以下症状?

1、用qt新建的工程,用qmake,可惜能看见的只有一个pro文件?

2、安装QT Creator后,使用MSVC编译显示no c++ compiler set in kit,或者MSVC的Kit错误,显示The ABI of the selected debugger does not match the toolchain ABI。

3、打开QT Creator Kit,就给你黄色大叹号!

二、原因:(可以跳过,直奔后面的解决方法)

上面的Kits界面里,第二个红框,通过Debugger一栏,可以看出Windows SDK是否缺失,此处cdb.exe的路径是完整的,且验证过路径真实存在,所以Windows SDK问题不大。

如果你本机没有Windows Kits文件夹,或者文件夹中找不到cdb.exe,此处就会出现问题,那就重新下载安装一个Windows SDK,再链接过来。我曾因为SDK安装不全,缺失cdb.exe等文件,导致出错。

再看第一个红框,Kit套件中MSVC套件是有问题的,前面的图标不是💻,而是一个黄色⚠或者红色错误感叹号。

选择其中一个进行查看,发现Compiler一栏中,C或C++的编译器选择为空(下图一),或者选择编译器后,却显示版本不兼容(下图二、图三),提示"The ABI of the selected debugger does not match the toolchain ABI"。

从Kit进入到编译器标签,查看是否检测到MSVC,如果Windows SDK正确下载,且VS、QT按上面教程下载安装,那么应该此处可以检测到MSVC,如下图。

点击选中一个MSVC,可以查看信息,版本不一致的问题就出在这里。我们下载的QT中包含的,是MSVC2017版,而检测出的MSVC编译器,是2005版,因此会出现错误提示The ABI of the selected debugger does not match the toolchain ABI。下面图一为下载的QT中包含的额MSVC静态库版本,图二第二个红框中为编译器中MSVC的ABI版本。

问题就出在这里了!那个扎眼的msvc2005!

三、解决方法

此时,选中一条适合的MSVC,点击右侧克隆,名称稍加随意修改下,ABI一栏选择"自定义",将msvc2005改为msvc2017,再检查下位数32bit或者64bit是否对应,确认没问题后,点击Apply。

注意:x86对应32bit,x64对应64bit,且c和c++需要分别查看、修改克隆。

再返回Kit标签,Compiler中选择新克隆的编译器,应该就没问题了,记得C和C++是一样的改法,都给修改确认一遍。全部修改完毕后,不要忘记点击OK再退出。

相关推荐
源代码•宸7 小时前
Leetcode—1266. 访问所有点的最小时间【简单】
开发语言·后端·算法·leetcode·职场和发展·golang
遇见~未来7 小时前
JavaScript数组全解析:从本质到高级技巧
开发语言·前端·javascript
南屿欣风7 小时前
Sentinel 熔断规则 - 异常比例(order & product 示例)笔记
java·开发语言
u0104058367 小时前
使用Java实现高性能的异步编程:CompletableFuture与Reactive Streams
java·开发语言
朔北之忘 Clancy7 小时前
2020 年 6 月青少年软编等考 C 语言二级真题解析
c语言·开发语言·c++·学习·青少年编程·题解·尺取法
消失的旧时光-19437 小时前
C++ 中的 auto 与 nullptr:不是语法糖,而是类型系统升级
开发语言·c++
专注VB编程开发20年7 小时前
c#Type数组转成字符串的名称
java·开发语言
编程饭碗7 小时前
【多线程编程】
java·开发语言
vyuvyucd8 小时前
Python虚拟环境终极指南:venv到uv进阶
开发语言·python·uv
Tim_108 小时前
【C++入门】05、复合类型-数组
开发语言·c++·算法