各位前輩好! 我是Qt初學者,遇到一些問題,所以上來請教一下:windows xp + qt-windows-opensource-5.0.1-mingw47_32-x86-offline.exe源代碼:#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 -mthreads -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.cppmain.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 1mingw32-make.exe[1]: Leaving directory 'E:/QtCode/HelloQt'makefile:34: recipe for target 'release' failed
mingw32-make.exe: *** [release] Error 2求教各位前輩~
1 回答

飲歌長嘯
TA貢獻1951條經驗 獲得超3個贊
主要是:
Qt5的qapplication在QtWidgets模塊里,和Qt4不一樣,Qt4的qapplication在QtGui模塊里。
故而只需在.pro文件中加入:
QT += core guigreaterThan(QT_MAJOR_VERSION, 4): QT += widgets
這兩行即可。
- 1 回答
- 0 關注
- 286 瀏覽
添加回答
舉報
0/150
提交
取消