2

我正在使用qmake -project和构建我的 Qt 应用程序qmake Prog.pro

当我运行 Makefile 我得到这个错误:

mainwindow.h:11:21: fatal error: QtWidgets: No such file or directory
 #include <QtWidgets>

我必须添加该行

QT += widgets

到.pro 文件才能正确编译。有没有办法自动做到这一点?

4

1 回答 1

3

有没有办法自动做到这一点?

是和不是。

你可以像这样运行 qmake:

qmake -project "QT+=widgets"

然后它会正确生成,但除了命令行之外,没有。另外,请注意,如果您也计划支持 Qt 4,您也希望使用防护:

greaterThan(QT_MAJOR_VERSION, 4):QT+=widgets

如果您碰巧使用QtCreator,您将能够避免这一切,因为 IDE 会自动为您生成这一切。

此外,即使您没有全部使用它们,您也应该能够避免将整个模块包含在所有类中。所以,而不是这样写:

#include <QtWidgets>

你可以写:

#include <Foo>
#include <Bar>
...
于 2014-04-28T06:36:57.103 回答