QT creator qt6.0 使用msvc2019 64bit编译报错

qt creator qt6.0报错:

D:\Qt6\6.3.0\msvc2019_64\include\QtCore\qglobal.h:123: error: C1189: #error: "Qt requires a C++17 compiler, and a suitable value for __cplusplus. On MSVC, you must pass the /Zc:__cplusplus option to the compiler."

pro文件添加:QMAKE_CXXFLAGS += -std:c++17 -Zc:__cplusplus -permissive- option

//:-1: error: dependent '..\..\..\..\Qt6\6.3.0\msvc2019_64\include\QtWidgets\QMainWindow' does not exist.

pro文件添加:(这个语法将使makefile包含绝对路径)

QMAKE_PROJECT_DEPTH = 0

QT creator显示信息:

mainwindow.h:10:10: In included file: STL1001: Unexpected compiler version, expected MSVC 19.29 or newer.

不影响编译,可忽略

vs2019参考解决方法:

错误 C1189 #error: STL1001: Unexpected compiler version, expected MSVC 19.22 or newer.

出现问题的原因

通过网络查找社区,看个方面资料,终于定位到问题所在:

#define _MSC_VER 1500

由于这句宏定义要求的mscv版本为15.00版本,而我使用的visual studio 2019 (社区版)使用的mscv版本为19.22,两者版本不对应,导致编译的时候出现编译器版本的报错

解决方案

直接修改这句宏定义为自己使用visual studio的mscv对应版本即可成功编译通过。

#define _MSC_VER 1922

相关推荐
北冥湖畔的燕雀10 小时前
C++泛型编程(函数模板以及类模板)
开发语言·c++
QX_hao12 小时前
【Go】--map和struct数据类型
开发语言·后端·golang
你好,我叫C小白12 小时前
C语言 循环结构(1)
c语言·开发语言·算法·while·do...while
Evand J14 小时前
【MATLAB例程】基于USBL和DVL的线性回归误差补偿,对USBL和DVL导航数据进行相互补偿,提高定位精度,附代码下载链接
开发语言·matlab·线性回归·水下定位·usbl·dvl
Larry_Yanan15 小时前
QML学习笔记(四十二)QML的MessageDialog
c++·笔记·qt·学习·ui
爱喝白开水a15 小时前
LangChain 基础系列之 Prompt 工程详解:从设计原理到实战模板_langchain prompt
开发语言·数据库·人工智能·python·langchain·prompt·知识图谱
Neverfadeaway15 小时前
【C语言】深入理解函数指针数组应用(4)
c语言·开发语言·算法·回调函数·转移表·c语言实现计算器
武子康15 小时前
Java-152 深入浅出 MongoDB 索引详解 从 MongoDB B-树 到 MySQL B+树 索引机制、数据结构与应用场景的全面对比分析
java·开发语言·数据库·sql·mongodb·性能优化·nosql
杰克尼15 小时前
JavaWeb_p165部门管理
java·开发语言·前端
一成码农15 小时前
JavaSE面向对象(下)
java·开发语言