2011-07-03 6 views
1

時々、Qtで書かれた大きなコードベースをコンパイルした後、リンクエラーが発生して、「metaObject」で何か間違っていると話すが、問題の原因が何であるかのアイデアは、どのように私はこのエラーからの詳細情報を取得することができますQt:信号のソースとスロットをリンクするエラーをデバッグして取得する方法

1>Linking... 
1>TestDialog.obj : error LNK2001: unresolved external symbol "public: virtual struct QMetaObject const * __thiscall TestDialog::metaObject(void)const " ([email protected]@@[email protected]@XZ) 
1>TestDialog.obj : error LNK2001: unresolved external symbol "public: virtual void * __thiscall TestDialog::qt_metacast(char const *)" ([email protected]@@[email protected]) 
1>TestDialog.obj : error LNK2001: unresolved external symbol "public: virtual int __thiscall TestDialog::qt_metacall(enum QMetaObject::Call,int,void * *)" ([email protected]@@[email protected]@@[email protected]) 
1>TestDialog.obj : error LNK2001: unresolved external symbol "public: static struct QMetaObject const TestDialog::staticMetaObject" ([email protected]@@[email protected]@B) 
1>debug\TestApp.exe : fatal error LNK1120: 4 unresolved externals 

答えて

2

がTestDialogがあなたのヘッダーセクションに追加された(testdialog.hを言う)で宣言されていることを確認ヘッダを作ります。プロファイル:

HEADERS += testdialog.h 

次にqmakeを再実行します。

関連する問題