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再退出。

相关推荐
CryptoPP29 分钟前
使用 KLineChart 这个轻量级的前端图表库
服务器·开发语言·前端·windows·后端·golang
18你磊哥35 分钟前
chromedriver.exe的使用和python基本处理
开发语言·python
小坏讲微服务1 小时前
Spring Cloud Alibaba 整合 Scala 教程完整使用
java·开发语言·分布式·spring cloud·sentinel·scala·后端开发
Kiri霧1 小时前
Scala 循环控制:掌握 while 和 for 循环
大数据·开发语言·scala
闲人编程1 小时前
Python的抽象基类(ABC):定义接口契约的艺术
开发语言·python·接口·抽象类·基类·abc·codecapsule
qq_172805591 小时前
Go 语言结构型设计模式深度解析
开发语言·设计模式·golang
lkbhua莱克瓦241 小时前
集合进阶8——Stream流
java·开发语言·笔记·github·stream流·学习方法·集合
20岁30年经验的码农2 小时前
Java Elasticsearch 实战指南
java·开发语言·elasticsearch
雾岛听蓝2 小时前
C++ 类和对象(一):从概念到实践,吃透类的核心基础
开发语言·c++·经验分享·笔记
CoderYanger2 小时前
优选算法-优先级队列(堆):75.数据流中的第K大元素
java·开发语言·算法·leetcode·职场和发展·1024程序员节