当前位置: 首页 > article >正文

【QT】已解决:Qt4.11.0无法使用MSVC编译器问题

目录

一、背景

1.本机环境

2.问题描述

3.问题解决前后对比图

二、详细操作

1.下载项目二所需qt环境

2.解决思路

3.安装VS2017

4.安装MSVC调试器

5.打开qtCreator查看编译器

5.编译+运行项目二

三、参考


一、背景

1.本机环境

windows11 + qtCreator4.11.0 + minGW 64位

2.问题描述

起因是我有两个项目,其中项目一所需环境为:QtCreator4.11.0 + Qt 5.14.1 + MinGW 64位,可正常编译代码,具体版本截图如下:

但是现在有另外一个项目二,所需环境为:Qt5.12.8 +MSVC 2017 64位,由于我在项目一只下载了qt相关软件,没有下载VS,而且我的QtCreator版本较低(4.11.0),没有MSVC的编译器接口,导致我在下载了qt5.12.8之后,无法在QtCreator上选择MSVC的编译器(打开qtCreator后,不会自动识别出5.12.8+MSVC的相关编译器,只有项目一的编译器)。

高版本qtCreator添加MSVC编译器接口与低版本对比如下:

3.问题解决前后对比图

解决前:打开编译位置,只有5.14.1相关,也没有MSVC

解决后:打开Kits-编译器,有MSVC相关

二、详细操作

1.下载项目二所需qt环境

主要是Qt 5.12.8 + MSVC-2017-64位 编译器

下载路径为:

Index of /archive/qt/5.12/5.12.8

(网上很多安装教程,此处不做赘述)

需要注意的是,在选择安装时,要勾选所需的编译器,我这里需要MSVC 2017 64位

然后安装即可

安装成功后,在qtCreator中打开项目,在【工具】-【选项】中,发现没有主动识别出我刚才安装的编译环境(我希望用qt5.12.8 + MSVC,但是只有qt5.14.1 + minGW)

2.解决思路

安装VS2017 + MSVC调试器

3.安装VS2017

1)安装包地址

http://xz.cncrk.com:8080/soft/keygen/visual studio 2017.rar

下载之后选择社区版

2)勾选【使用C++的桌面开发】和【Visual Studio扩展开发】

3)修改安装位置

我一般选D盘,建议别安C盘,太占地方

然后点击右下角【安装】

就可以看到安装进度了

安装完是这样的

登录你的微软账户即可(如果不登陆的话,只能试用30天)

4.安装MSVC调试器

1)下载位置:

https://download.microsoft.com/download/4/2/2/42245968-6A79-4DA7-A5FB-08C0AD0AE661/windowssdk/winsdksetup.exe

2)下载安装

双击图标

选第一个,点Next

选默认,Next

选接受Accept

只选这一个就行【Debugging Tools for Windows】

安装中...

安装完毕

5.打开qtCreator查看编译器

【工具】-【选项】

【Kits】-【编译器】,可以看到MSVC的编译器

【Debuggers】下也可以看到自动检测的调试器

然后可以手动添加自己需要的编译配置,在【构建套件】中,点击添加,起一个名字(我这里叫qt5.12.8-MSVC-2017-64bit),然后选择编译器,我这里用的都是MSVC2017-64位相关的,然后选择Debugger配置,我用的也是64位相关的,然后选择qt版本,我这里用的是qt5.12.8,选择之后,点击【apply】【ok】即可

详细如下

最后打开项目,就可以在左侧边栏【项目】中选择新建的配置了

5.编译+运行项目二

首先打开项目二的代码,然后在【编辑】中,可以看到刚才自定义的编辑器配置,点击选择即可

左下角可以选择编译(锤子)或运行(绿三角)调试(绿三角+虫子)

三、参考

Qt Creator+MSVC开发环境搭建(Qt Creator编码+MSVC编译)_qtcreator msvc-CSDN博客

Visual Studio Community 2017安装步骤(只装C++)-CSDN博客

至此,在qtCreator上从零配置MSVC就完成了,是实际遇到的问题,如有描述不清,可以留言

--END--


http://www.kler.cn/a/512800.html

相关文章:

  • 简述mysql 主从复制原理及其工作过程,配置一主两从并验证
  • 路由器旁挂三层网络实现SDWAN互联(爱快SD-WAN)
  • C++ 模拟真人鼠标轨迹算法 - 防止游戏检测
  • MySQL中日期和时间戳的转换:字符到DATE和TIMESTAMP的相互转换
  • STM32 学习笔记【补充】(十)硬件I2C读写MPU6050
  • 计算机网络 (49)网络安全问题概述
  • Python入门:3.Python的输入和输出格式化
  • 【C语言篇】深入探究 C 语言指针:揭开指针变量与地址的神秘面纱
  • 【Elasticsearch】filterQuery过滤查询
  • 计算机网络 (52)秘钥分配
  • 家用路由器:WAN口和LAN口区别?
  • 华为OD机试E卷 --矩阵扩散--24年OD统一考试(Java JS Python C C++)
  • c++解决常见内存泄漏问题——智能指针的使用及其原理
  • 牛客周赛76:JAVA
  • 华为 Ascend 平台 YOLOv5 目标检测推理教程
  • Web 音视频(一)基础知识
  • 模型部署工具01:Docker || 用Docker打包模型 Build Once Run Anywhere
  • AI大模型探索之路-实战篇:智能化IT领域搜索引擎之github网站在线搜索
  • 【深度学习基础】线性神经网络 | softmax回归的从零开始实现
  • 主从复制
  • MySQL下载安装配置(超级超级入门级)
  • ThreeJs能力演示——图层导入导出
  • Vue 3中的路由(Router)详解
  • VIM 的 YCM 插件
  • JDK长期支持版本(LTS)
  • Ubuntu 22.04 TLS 忘记root密码,重启修改的解决办法