Qt Creator编译时出现“QtCore\qstringview.h:178: error: C1001: 编译器中发生内部错误”

在使用QtCreator编译过程中遇到C1001编译器内部错误,原因是VS组件未更新。解决方法为通过VS菜单栏更新相关组件。

一、Qt Creator编译时出现下面的运行错误:
C:\Qt\Qt5.10.1\5.10.1\msvc2013_64\include\QtCore\qstringview.h:178: error: C1001: 编译器中发生内部错误。

二、原因及解决方法:
1、原因是新装的VS组件需要升级才行。
2、更新VS相关组件方法:
VS菜单栏:工具–>扩展和更新–>更新–>右侧选择需要更新的。我这里刚更新过,没有再显示出update 5字样的更新组件。
在这里插入图片描述

/usr/include/aarch64-linux-gnu/qt5/QtGui/qwindowdefs.h:83: error: expected expression In file included from ../QT-XMY/ds18b20_thread_xmy.cpp:11: In file included from ../QT-XMY/mainwindow.h:4: In file included from /usr/include/aarch64-linux-gnu/qt5/QtWidgets/QMainWindow:1: In file included from /usr/include/aarch64-linux-gnu/qt5/QtWidgets/qmainwindow.h:44: In file included from /usr/include/aarch64-linux-gnu/qt5/QtWidgets/qwidget.h:44: /usr/include/aarch64-linux-gnu/qt5/QtGui/qwindowdefs.h:83:1: error: expected expression template<typename T> class QList; ^ /usr/include/aarch64-linux-gnu/qt5/QtGui/qwindowdefs.h:105: error: expected expression /usr/include/aarch64-linux-gnu/qt5/QtGui/qwindowdefs.h:105:1: error: expected expression template<class K, class V> class QHash; ^ /usr/include/aarch64-linux-gnu/qt5/QtGui/qwindowdefs.h:108: error: expected expression /usr/include/aarch64-linux-gnu/qt5/QtGui/qwindowdefs.h:108:1: error: expected expression template<class V> class QSet; ^ /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:84: error: no matching function found in local scope In file included from ../QT-XMY/ds18b20_thread_xmy.cpp:11: In file included from ../QT-XMY/mainwindow.h:4: In file included from /usr/include/aarch64-linux-gnu/qt5/QtWidgets/QMainWindow:1: In file included from /usr/include/aarch64-linux-gnu/qt5/QtWidgets/qmainwindow.h:44: In file included from /usr/include/aarch64-linux-gnu/qt5/QtWidgets/qwidget.h:46: /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:84:41: error: no matching function found in local scope friend Q_DECL_CONSTEXPR inline bool operator==(const QMargins &, const QMargins &) noexcept; ^~~~~~~~ /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:85: error: no matching function found in local scope /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:85:41: error: no matching function found in local scope friend Q_DECL_CONSTEXPR inline bool operator!=(const QMargins &, const QMargins &) noexcept; ^~~~~~~~ /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:88: error: expected expression /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:88:1: error: expected expression Q_DECLARE_TYPEINFO(QMargins, Q_MOVABLE_TYPE); ^ /usr/include/aarch64-linux-gnu/qt5/QtCore/qtypeinfo.h:282:41: note: expanded from macro 'Q_DECLARE_TYPEINFO' #define Q_DECLARE_TYPEINFO(TYPE, FLAGS) \ ^ /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:102: error: qualified reference to 'QMargins' is a constructor name rather than a type in this context In file included from ../QT-XMY/ds18b20_thread_xmy.cpp:11: In file included from ../QT-XMY/mainwindow.h:4: In file included from /usr/include/aarch64-linux-gnu/qt5/QtWidgets/QMainWindow:1: In file included from /usr/include/aarch64-linux-gnu/qt5/QtWidgets/qmainwindow.h:44: In file included from /usr/include/aarch64-linux-gnu/qt5/QtWidgets/qwidget.h:46: /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:102:35: error: qualified reference to 'QMargins' is a constructor name rather than a type in this context Q_DECL_CONSTEXPR inline QMargins::QMargins() noexcept : m_left(0), m_top(0), m_right(0), m_bottom(0) {} ^ /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:102: error: expected unqualified-id /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:102:44: error: expected unqualified-id Q_DECL_CONSTEXPR inline QMargins::QMargins() noexcept : m_left(0), m_top(0), m_right(0), m_bottom(0) {} ^ /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:104: error: qualified reference to 'QMargins' is a constructor name rather than a type in this context /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:104:35: error: qualified reference to 'QMargins' is a constructor name rather than a type in this context Q_DECL_CONSTEXPR inline QMargins::QMargins(int aleft, int atop, int aright, int abottom) noexcept ^ /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:104: error: expected unqualified-id /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:104:44: error: expected unqualified-id Q_DECL_CONSTEXPR inline QMargins::QMargins(int aleft, int atop, int aright, int abottom) noexcept ^ /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:104: error: expected ')' /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:104:44: error: expected ')' /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:104:43: note: to match this '(' Q_DECL_CONSTEXPR inline QMargins::QMargins(int aleft, int atop, int aright, int abottom) noexcept ^ /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:108: error: function definition is not allowed here /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:108:1: error: function definition is not allowed here { return m_left==0 && m_top==0 && m_right==0 && m_bottom==0; } ^ /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:111: error: function definition is not allowed here /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:111:1: error: function definition is not allowed here { return m_left; } ^ /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:114: error: function definition is not allowed here /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:114:1: error: function definition is not allowed here { return m_top; } ^ /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:117: error: function definition is not allowed here /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:117:1: error: function definition is not allowed here { return m_right; } ^ /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:120: error: function definition is not allowed here /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:120:1: error: function definition is not allowed here { return m_bottom; } ^ /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:124: error: function definition is not allowed here /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:124:1: error: function definition is not allowed here { m_left = aleft; } ^ /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:127: error: function definition is not allowed here /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:127:1: error: function definition is not allowed here { m_top = atop; } ^ /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:130: error: function definition is not allowed here /usr/include/aarch64-linux-gnu/qt5/QtCore/qmargins.h:130:1: error: function definition is not allowed here { m_right = aright; } ^ fatal error: too many errors emitted, stopping now [-ferror-limit=] 1 warning and 20 errors generated. make: *** [Makefile:464: ds18b20_thread_xmy.o] Error 1 make: *** Waiting for unfinished jobs....
最新发布
11-05
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值