QT5.14.2+VS2019 构建套件(Kit)黄色感叹号问题解决


前提

在已安装好Windows SDK后,重新打开QtCreate依次点击工具–选项–Kits,首先查看编译器和调试器,对应界面如下(如果没有安装SDK,可到文章末参考另一博客)

点击编译器可以看到自动生成的以下红色框中的编译器(手动添加的方法在后面)
请添加图片描述

点击Debuggers可以看到自动生成以下红色框中的调试器(32位及64位)
请添加图片描述

问题描述

点击构建套件(Kit),发现“MSVC2015 64bit”出现黄色感叹号,表示当前编译器和调试器不匹配(一开始MSVC2017等都带有感叹号,不过已经改好了,解决方式一样,这边以2015做个演示)
1.点击出现感叹号的Kit后出现下列界面;
2.修改对应的编译器,但是不管怎么选择,都无法匹配成功,感叹号依旧存在;
3.看到当前Kit是64位,所以选择x64的调试器;
请添加图片描述

将鼠标放至感叹号处,可以看到如下界面:
这里仔细看一下红色框内的警告,提示到编译器不匹配,那怎么才能得到一个匹配的编译器呢?接着往下走
请添加图片描述

解决方法

那接下来就是造一个匹配的编译器,步骤如下:
1.点击编译器进入界面;
2.选择其中一个编译器,注意区分32位还是64位(当然后续也是可以进行修改的,但是这样比较方便);
3.点击克隆按钮后,可以看到Manual下拉列表中出现刚刚选择的编译器的克隆,可以看到我选的是C列表的,所以生成也在C列表中(C++列表同理);
4.选择克隆的编译器,点击自定义,修改为msvc2015,并且可以修改名称;
5.C++列表中进行同样的操作,注意改好对应信息即可,点击Apply后点ok;
请添加图片描述

设置完成如图,对msvc2017也进行了相应的修改:
请添加图片描述

问题解决

点击构建套件(Kit),选择相应Kit后进行编译器及调试器的配置,配置成功,感叹号消失!并且后续笔者新建一个项目进行编译,测试ok。
请添加图片描述


提示:
共同学习,共同进步,如果还有相关问题,可在评论区留言进行讨论。

安装Windows SDK的方法可以参考这篇博客
参考博客:[填坑]QT Creator调用VS2017自带调试器

### 使用 Qt 5.14.2 创建项目或应用程序 #### 下载并安装 Qt 5.14.2 为了使用 Qt 5.14.2 开发应用程序,首先需要下载并安装该版本的 Qt。访问清华大学开源软件镜像站提供的链接[^1]: https://mirrors.tuna.tsinghua.edu.cn/qt/archive/qt/5.14/5.14.2/ 选择适合操作系统的安装文件进行下载。对于 Linux 用户来说,在获取到 `.run` 文件之后,需赋予其执行权限并通过命令行启动安装向导。 ```bash chmod a+x qt-opensource-linux-x64-5.14.2.run ./qt-opensource-linux-x64-5.14.2.run ``` 按照提示完成登录或注册账号的过程即可继续安装流程。 #### 启动 Qt Creator 并创建新项目 一旦成功安装完毕,可以通过点击 Windows 徽标键搜索 `Qt Creator` 或者直接在终端里输入相同名称来启动集成开发环境 (IDE)。 进入 IDE 主界面后,通过菜单栏中的 "File" -> "New File or Project..." 来新建一个项目。此时会弹出一系列选项让用户挑选想要构建的应用类型;例如桌面应用、移动设备上的触摸屏应用或是基于 QML 的 UI 设计等。 假设要建立简单的 Widgets Application,则应遵循以下路径选取模板:"Applications" -> "Qt Widgets Application"[^3]。 #### 配置项目设置 选定合适的类别后,下一步便是填写项目的具体信息,比如命名空间、类名以及其他必要的配置项。这些设定将影响最终生成源码结构及其依赖关系。 另外还需指定所使用的套件Kit),即编译器与目标平台组合。通常情况下,默认给出的选择已经足够满足大多数需求,但如果存在特殊要求则可自行调整。 #### 编写代码实现功能逻辑 当一切准备就绪以后,便可以在编辑区内开始编码工作了。利用左侧资源管理面板浏览各个组成部分,并双击打开感兴趣的文件来进行修改完善。这里提供了一个非常基础的例子作为入门指导——显示带有按钮的小窗口[^4]。 ```cpp #include <QApplication> #include <QPushButton> int main(int argc, char *argv[]) { QApplication app(argc, argv); QPushButton button("Click Me"); QObject::connect(&button,SIGNAL(clicked()), qApp,SLOT(quit())); button.show(); return app.exec(); } ``` 上述示例展示了怎样定义一个继承自 `QWidget` 类的对象实例化过程,同时设置了槽函数连接机制使得按下按键能够触发关闭整个应用程序的动作。 ---
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值