即使在新创建的 Qt Creator项目中也会发生这种情况。这是一个Qt Widgets应用程序。当我尝试使用Qt 5.4.2 MinGW工具链编译它时,我收到此错误:
..\..\..\Qt\5.4\mingw491_32\include/QtCore/qtypeinfo.h:178:31: error: invalid application of 'sizeof' to incomplete type 'QImage' isLarge = (sizeof(TYPE)>sizeof(void*)), \ ^
如果我使用我安装的其他工具链(Qt 5.4.2 VS2008)编译它,那么编译时没有任何错误。
所以我认为这是MinGW工具链配置的一个问题。
完整的编译器输出 - http://pastebin.com/kUW6Ss6v。
这是MinGW工具链的问题,我该如何解决?
编辑:我创建了一个重现错误的最小示例:
#include <QImage>
int main(int argc, char *argv[]) {
return 0;
}
这在MinGW工具链下失败并出现相同的错误,但是在VS2008工具链下编译。
答案 0 :(得分:1)
正如我在评论中提到你的那样 - 你试过reinstall MinGW吗?并且,如果您尝试将#include <QImage>
更改为#include <QtGui/QImage>
,是否有任何更改?另外,我读到如果你有Qt 4和Qt 5,可能会与编译冲突。