您好,匿名用户
随意问技术百科期待您的加入

Qt5 fatal error: QPushButton: No such file or directory

0 投票

各位前辈好! 我是Qt初学者,遇到一些问题,百度和google了找不到解决的方法,所以上来请教一下:

windows xp + qt-windows-opensource-5.0.1-mingw47_32-x86-offline.exe

安装后添加了环境变量,对照了《零基础学Qt4》上面的例子,结果出现一些问题。

源代码:

#include <QCoreApplication>
#include <QPushButton>
int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);
    QPushButton pushButton(QObject::tr("Hello Qt!"));
    pushButton.show();
    QObject::connect(&pushButton,SIGNAL((clicked()),&a,SLOT(quit());
    return a.exec();
}
 

保存为 HelloQt.cpp 后,使用cmd 开始编译:

qmake -project 
//OK
qmake HelloQt.pro
//OK
mingw32-make.exe
 
> 
mingw32-make.exe -f Makefile.Release
mingw32-make.exe[1]: Entering directory 'E:/QtCode/HelloQt'
g++ -c -pipe -fno-keep-inline-dllexport -O2 -frtti -Wall -Wextra -fexceptions -m
threads -DUNICODE -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_OPENGL_ES_2 -DQT
_OPENGL_ES_2_ANGLE -DQT_NEEDS_QMAIN -I. -I"." -I"D:\Qt\Qt5.0.1\5.0.1\mingw47_32\
include" -I"D:\Qt\Qt5.0.1\5.0.1\mingw47_32\include\QtGui" -I"D:\Qt\Qt5.0.1\5.0.1
\mingw47_32\include\QtCore" -I"release" -I"D:\Qt\Qt5.0.1\5.0.1\mingw47_32\mkspec
s\win32-g++" -o release\main.o main.cpp
main.cpp:2:23: **fatal error: QPushButton: No such file or directory**
compilation terminated.
Makefile.Release:175: recipe for target 'release/main.o' failed
mingw32-make.exe[1]: *** [release/main.o] Error 1
mingw32-make.exe[1]: Leaving directory 'E:/QtCode/HelloQt'
makefile:34: recipe for target 'release' failed
mingw32-make.exe: *** [release] Error 2

出现错误,不知此错误为何缘故? 明明头文件已经包含了 QPushButton.h 了。

求教各位前辈~

用户头像 提问 2014年 2月3日 @ Trish 上等兵 (154 威望)
分享到:

1个回答

0 投票
 
最佳答案

问题已经解决了,主要是:

Qt5的qapplication在QtWidgets模块里,和Qt4不一样,Qt4的qapplication在QtGui模块里。

故而只需在.pro文件中加入:

QT += core gui
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

这两行即可。

用户头像 回复 2014年 2月3日 @ 正能量 上等兵 (297 威望)
选中 2013年 9月7日 @Trish
提一个问题:

相关问题

0 投票
0 回复 28 阅读
0 投票
1 回复 12 阅读
用户头像 提问 2014年 3月7日 @ Shyvana 上等兵 (214 威望)
0 投票
0 回复 16 阅读
用户头像 提问 2013年 11月19日 @ Amumu 上等兵 (340 威望)
0 投票
1 回复 28 阅读
用户头像 提问 2013年 11月13日 @ LeBlanc 上等兵 (289 威望)
0 投票
1 回复 10 阅读

欢迎来到随意问技术百科, 这是一个面向专业开发者的IT问答网站,提供途径助开发者查找IT技术方案,解决程序bug和网站运维难题等。
温馨提示:本网站禁止用户发布与IT技术无关的、粗浅的、毫无意义的或者违法国家法规的等不合理内容,谢谢支持。

欢迎访问随意问技术百科,为了给您提供更好的服务,请及时反馈您的意见。
...