【笔记1-5】Qt bug记录:C1189 Qt requires a C++17 compiler, and a suitable value for __cplusplus. On MSVC

bug现象:
在Qt5.x.x升级到Qt6.x.x的过程中会遇到很多的问题,例如C1189 Qt requires a C++17 compiler, and a suitable value for __cplusplus. On MSVC

在这里插入图片描述
bug原因
问题的原因是Qt5与Qt6使用的编译器版本和C++版本都不同,从安装的时候就可以看到,5.15.2的时候vs2015和vs2019都可以使用,6.7.2就只支持vs2019了,5.9左右的版本只支持vs2015

在这里插入图片描述
在这里插入图片描述
对于C++版本,Qt6需要使用C++17,而Qt5需要使用C++14,如果使用vs进行编译,需要在工程属性里选择

解决方案:
在网上调查了一段时间,大概有两个方法

方法一:
右键点击工程名字->property->c/c+±>language->设定C++17
在这里插入图片描述
方法二
打开Qt的工程文件.pro,加入下面两段话,重新编译即可

CONFIG += c++17
QMAKE_CXXFLAGS += -std:c++17 -Zc:__cplusplus -permissive- option

在这里插入图片描述

我是两个方法都使用了才好使的

在这里插入图片描述
创作不易,扫个红包吧
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值