VS2019下Qt使用MSVC2017找不到编译器

2 篇文章 0 订阅

先说结论

经过楼主的尝试,VS2019在Qt 5.11版本的编译中会存在问题。
对于想使用Qt下: Desktop Qt 5. 11 2 MSVC2017 64bit 的构建套件(kit)的盆友们建议还是下载VS2017最稳最妥,不建议使用VS2019
如果要尝试可以查看:https://www.zhihu.com/question/358058090 注意:请提前确保 自己的Qt版本中编译器手动添加时可以选择MSVC类型。
工具->选项->编译器->添加->MSVC->C++

为什么楼主要用MSVC2017

楼主在QT代码中做了matlab调用,无奈我安装的matlab是64位的,而Qt自带的编译是32位的存在问题。故没用Qt自带的 Desktop Qt 5.11.2 MinGW 32bit构建套件,而是准备使用Qt 5. 11 2 MSVC2017 64bit 的构建套件。

配置构建套件(kit)

配置构建套件需要选择正确的编译器和调试器,不然会出现红色的感叹号或黄色的感叹号代表报错。
如下图,是楼主配置好之后的构建套件 MinGW 32bit 和MSVC2017 64bit。
MinGW 32bit
MSVC2017 64bit

VS2019遇到问题的详细说明:

VS2019中虽然可以安装VS2017的相关编译器,然而在Qt中可能自动无法识别,需要手动添加,而我的5.11版本中手动添加没有MSVCl类型的选项。并且识别了VS2017相关编译器(如 Microsoft Visual C++ Compiler 14.0(x86_amd64)),选择放入Qt 的MSVC2017套件中还是无法正常使用。
所以,建议安装下载VS2017。

MSVC2017 64bit套件配置流程:

安装下载VS2017

下载地址:https://visualstudio.microsoft.com/vs/older-downloads/
安装**:勾选 使用工作负载中的C++的桌面开发组件和单个组件中的windows通用CRT SDK。**(不勾其实说不定也可以…)
在这里插入图片描述
在这里插入图片描述

配置Qt MSVC2017 构建套件(kit)

安装完成后打开QT可以看到编译器中出现了: Microsoft Visual C++ Compiler 15.0 的编译器。注意MSVC2017对应的是 Microsoft Visual C++ Compiler 15.0的编译器
在这里插入图片描述
将15.0编译器 选入 MSVC2017的配置中:
在这里插入图片描述
调试器(Debugger)选择使用Windows SDK程序自动生成的调试器。具体操作请查看
在这里插入图片描述
同样加入到kit MSVC2017的配置中:
在这里插入图片描述
配置成功后,黄色的感叹号会消失,变为一个电脑的图标,此时此套件已经可以正常的用于build文件了。

中文乱码问题

MSVC2017编译过程中会出现 MinGW时不会出现的中文乱码。

第一步:

在有中文的cpp对应的头文件(.h文件)的首行加上一句:

#pragma execution_character_set("utf-8")//中文编码
第二步 :

工具 ->选项 ->文本编辑器 ->行为 ->文件编码 ->UTF-8 BOM:选择 如果文件为UTF-8则添加。
应用后再次编译,问题解决。(这个方法非主流。。。)

ps.

关于 :BOM的解释
当MSVC遇到一个没有BOM的UTF-8编码的文件时,它通常会把文件看作GB2312的来处理。如果文件全是英文没有问题,但如果包含中文,编译器就会出现误读

参考链接

https://forum.qt.io/topic/107762/pylon-in-qt-compilation-issues
https://blog.csdn.net/Scarlett_OHara/article/details/80690230?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase
https://blog.csdn.net/cocoasprite/article/details/53634386

  • 15
    点赞
  • 77
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值