我刚刚安装了Mac OS X 10.8.3和Qt Creator 3,XCode和XCode命令行工具。我正在尝试编译一个可以在另一台计算机上运行的项目,但每次我“全部构建”时,我都会error: 'QtGui/QAction' file not found
在#include <QtGui/QAction>
我尝试在.pro文件中添加第二行和第三行,但它没有帮助
QT += core gui opengl
CONFIG += qt
QT += gui
TARGET = BasicOpenGL
TEMPLATE = app
更新:我也试过这个.pro文件,但它无法正常工作
QT += core gui opengl
QT += widgets
TARGET = BasicOpenGL
TEMPLATE = app
我应该说这是我第一次尝试在Mac上进行开发。
从Qt编译输出
Versions/A/Headers -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/System/Library/Frameworks/AGL.framework/Headers -I. -I. -F/Users/john/Qt/5.2.0/clang_64/lib -o mainwindow.o ../Framework/mainwindow.cpp
In file included from ../Framework/mainwindow.cpp:2:
../Framework/ui_mainwindow.h:14:10: fatal error: 'QtGui/QAction' file not found
#include <QtGui/QAction>
^
1 error generated.
make: *** [mainwindow.o] Error 1
15:51:32: The process "/usr/bin/make" exited with code 2.
Error while building/deploying project BasicOpenGL (kit: Desktop Qt 5.2.0 clang 64bit)
When executing step 'Make'
更新:我得到了它的工作,但所有的拧紧我不确定是什么做的。我开始使用全新的mac映像,安装了系统更新,安装了xcode,安装了xcode命令行工具,安装了QT Creator 3.0,安装了QT库4.8.1,在QT Creator中设置了编译器。
答案 0 :(得分:16)
尝试make clean
后跟make
。我在Windows 7系统上遇到了这个问题,这对我有用。
答案 1 :(得分:13)
在Qt5中,QAction
标题位于QtWidgets
包含子目录,而不在QtGui
中(Qt4也是如此)。虽然您实际上不需要指定包含子目录,因为qmake
将为您处理。您只需将QT += widgets
添加到.pro
文件中即可。
答案 2 :(得分:2)
将版本设置为Qt5,将所有#include<QtQui/*>
更改为#include<QtWidgets/*>
。
并在.pro文件中添加QT += widgets
。
重新生成项目,当您再次收到错误时,请点按错误消息,然后将#include<QtQui/*>
更改为#include<QtWidgets/*>
。