2012-01-19 9 views
3

私は最近、C++ Gui Programming with Qt 4を使い始めました。インクルード/ Qtからのヘッダーファイルのインクルードは廃止されました

しかし、私は最初のチュートリアルを終えることはできません。

#include <QApplication> 
#include <QTextEdit> 

int main(int argv, char **args) 
{ 
    QApplication app(argv, args); 

    QTextEdit textEdit; 
    textEdit.show(); 

    return app.exec(); 
} 

私はこれをコンパイルしようとするたびに、私はこの取得:私はQtのに新しく、コンパイルにかなり新たなんだと

C:\Qt\4.8.0\andrew>qmake -project 

C:\Qt\4.8.0\andrew>qmake 

C:\Qt\4.8.0\andrew>make 
mingw32-make -f Makefile.Debug 
mingw32-make[1]: Entering directory `C:/Qt/4.8.0/andrew' 
g++ -c -g -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT - 
DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE - 
DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN -I"..\includ 
e\QtCore" -I"..\include\QtGui" -I"..\include" -I"." -I"..\include\ActiveQt" -I"d 
ebug" -I"..\mkspecs\win32-g++" -o debug\tutone.o tutone.cpp 
In file included from tutone.cpp:1:0: 
C:\Qt\4.8.0\include\Qt\Qapplication.h:3:10: warning: #warning "Inclusion of head 
er files from include/Qt is deprecated." [-Wcpp] 
In file included from tutone.cpp:2:0: 
C:\Qt\4.8.0\include\Qt\Qpushbutton.h:3:10: warning: #warning "Inclusion of heade 
r files from include/Qt is deprecated." [-Wcpp] 
tutone.cpp: In function 'int qMain(int, char**)': 
tutone.cpp:11:7: error: 'class QApplication' has no member named 'setMainWidget' 

mingw32-make[1]: *** [debug/tutone.o] Error 1 
mingw32-make[1]: Leaving directory `C:/Qt/4.8.0/andrew' 
mingw32-make: *** [debug] Error 2 

を、私はエラーが私の端にあると仮定します。ヘッダーが間違っているとか何かを宣言していますか?

私.PROファイルには、次のようになります。あなたは.PROファイルにQT変数を追加する必要がありqmake -projectを実行した後

###################################################################### 
# Automatically generated by qmake (2.01a) Thu Jan 19 12:41:21 2012 
###################################################################### 

TEMPLATE = app 
TARGET = 
DEPENDPATH += . 
INCLUDEPATH += . 

# Input 
HEADERS += tutone.h \ 
      C:/Qt/4.8.0/include/Qt/Qapplication.h \ 
      ../include/QtGui/qapplication.h \ 
      ../src/gui/kernel/qapplication.h \ 
      C:/Qt/4.8.0/include/Qt/Qpushbutton.h \ 
      ../include/QtGui/qpushbutton.h \ 
      ../src/gui/widgets/qpushbutton.h 
SOURCES += tutone.cpp \ 
      tutthree.cpp \ 
      ../src/gui/kernel/qapplication.cpp \ 
      ../src/gui/widgets/qpushbutton.cpp 

おかげ

+1

'#include 'と '#include 'を使ってみましたか?私はまだ4.8を試していませんが、あなたは代わりに_module_で作業してもらいたいかもしれません。 –

+0

私はそれを試み、同じ結果を得ました。私がコンパイルしようとしているこのチュートリアルは、QtのWebサイトから直接入手できます。 Qt Creatorでは、私のヘッダの両方が存在しないと言います。ヘッダーへのパス全体を定義する必要がありますか? –

+0

チュートリアルがオンラインの場合、および.proファイルの内容にリンクを追加できますか? –

答えて

4

それが原因Qtのビルド設定のバグに偽のエラーです。
これは問題ではなく、Qtバグトラッカーに記録されています

1

。そして、あなたは(あなたのプログラムに動的にQtのライブラリとリンク)これらの奇数のヘッダとソースを削除することができます。

QT += core gui # <-- this line 
TEMPLATE = app 
TARGET = ProjectNameHere 
DEPENDPATH += . 
INCLUDEPATH += . 

# Input 
HEADERS += tutone.h 
SOURCES += tutone.cpp \ 
     tutthree.cpp \ 
関連する問題