Qt Creator配置MSVC编译环境、调试环境

article/2024/4/13 15:27:35

在windows上开发,一般使用Qt Creator自带mingw编译器,编译和调试都很方便,安装Qt时勾选后,自动配置完毕。

但是有时候我们需要使用MSVC的编译器,这个时候我们没法直接使用,需要配置环境才能使用,以下是配置方案。

首先确保在安装Qt的时候,已经勾选了msvc的编译器。

然后在安装visual的时候勾选visual C++生成工具,勾选windows 10 SDK。

这里我使用的是vs2017。

好了,到这一步,QtCreator和visual studio都已经安装完成了,但是在QtCreator单独使用msvc的编译器还是没法编译。

解决方法:将刚才安装好的SDK目录下x64下面的 rc.exe 拷贝到 Qt安装的目录下。

这里我使用的是x64的版本,所以64位的rc.exe拷贝到Qt msvc64的版本下。

进行到这一步之后,QtCreator可以单独使用msvc的编译器进行编译,这个时候没有办法调试程序。

解决办法:Qt Creator配置MSVC调试器

在Qt Creator当中,编译使用MSVC,但是调试是使用cdb.exe。

获取和安装:cdb.exe 在 Debugging tools for Windows 中,而现在已经不单独提供下载,只在Windows SDK 或者Windows Driver Kit里面包含 所以需要下载微软的调试工具,最少需要下载 Windows SDK。

1.打开电脑的控制面板里面的卸载与更改程序,这里选择开发工具包我箭头指向的这个,右键选择更改。

2.选择change

 3.勾选圈住的地方,确定即可。

 

4.然后Qt Creator中的设置套件中的 Debugger 选中下图的调试器就行了。 

新建msvcGDB,选择cdb.exe的路径

 在msvc编译器中配置好调试器就行啦。

 


http://www.ngui.cc/article/show-1929939.html

相关文章

ABAP - SALV教程02 - 开篇:打开SALV的三种方式之二

全屏模式生成SALV的方式:http://t.csdnimg.cn/CzNLz本文讲解生成可控模式的SALV,该方式需要依赖自己创建屏幕的自定义控件区域(Custom Control)实现步骤:需要注意的点是SALV的实例对象和dispaly方法一定是在屏幕PBO事件…

修改docker默认存储位置【高版本的docker】

一、修改docker默认存储位置 1、停服务 systemctl stop docker 2、修改/etc/docker/daemon.json添加新的dcoker路径 如"data-root": "/mnt/hdd1/docker" 3、保存后重启服务:systemctl restart docker 二、其他服务的命令 systemctl disab…

【GPU驱动开发】-GPU架构简介

前言 不必害怕未知,无需恐惧犯错,做一个Creator! GPU(Graphics Processing Unit,图形处理单元)是一种专门用于处理图形和并行计算的处理器。GPU系统架构通常包括硬件和软件层面的组件。 一、总体流程 应…

箱式分拣输送线PLC与WCS接口数据交互协议

数据交互概述 输送线PLC与WCS之间的数据交互在仓储和物流系统中扮演着至关重要的角色,对系统的效率、稳定性和安全性有着直接的影响。以下是数据交互的重要性所体现的几个方面: 1、任务执行效率: 通过有效的数据交互,WCS可以实时将任务指令发送给输送线PLC,从而实现对仓…

Unity(第二十三部)导航

你可以使用 unity官方提供的 unity导航组件或第三方 unity导航组件,以实现游戏中角色或其他物体的导航。 unity导航组件通常具有多种导航模式,如飞行模式、步行模式、车辆模式等,可以根据不同的需求选择合适的模式。同时,unity导…

Redis持久化+Redis内存管理和优化+Redis三大缓存问题

Redis持久化Redis内存管理和优化Redis三大缓存问题一、Redis高可用二、Redis持久化1、RDB持久化1.1 触发条件(1) 手动触发(2) 自动触发(3) 其他自动触发机制 1.2 执行流程1.3 启动时加载 2、AOF持久化2.1 开启AOF2.2 执行流程(1) 命令追加(append)(2) 文件写入(write)和文件同步…

if-else 语句

if-else 语句 概念:是双条件分支语句,根据一个条件来控制程 序执行的流程。 语法格式: if(表达式) { 若干语句 } else { 若干语句 }

Flutter中Widget的生命周期

Widget生命周期: createState-initState-didChangeDependency-build-deactive-dispose 可通过WidgetsBinding类对widget生命周期的回调进行监控。 createState:StatefulWidget 中用于创建 State; initState:State 的初始化操作&am…

国防科大、中大0706大气科学及南信大大物院初试复习宝典——简答题知识点汇总

Attention!有思维导图版 有Xmind导图格式的,更适合复习,下面是xmind导出的markdown格式,丑死了,可以移步去网盘查看 链接:https://pan.baidu.com/s/1ZcqfPWoyMd6eXf3_jvSVzQ?pwd7ij7 提取码:…

【JS】生成N位随机数

作用 用于邮箱验证码 码 ramNum.js /*** 生成N位随机数字* param {Number} l 默认&#xff1a;6&#xff0c;默认生成6位随机数字* returns 返回N位随机数字*/ const ramNum (l 6) > {let num for (let i 0; i < l; i) {const n Math.random()const str String(n…