2012-01-12 222 views
0

我是新來的Qt,現在我正在開發使用Visual Studio 2008的一個簡單的應用程序,當我建立的代碼,會出現以下錯誤:如何解決錯誤LNK2001:無法解析的外部符號?

error LNK2001: unresolved external symbol "public: virtual struct QMetaObject const * __thiscall Window::metaObject(void)const " ([email protected]@@[email protected]@XZ) 

error LNK2001: unresolved external symbol "public: virtual void * __thiscall Window::qt_metacast(char const *)" ([email protected]@@[email protected]) 

error LNK2001: unresolved external symbol "public: virtual int __thiscall Window::qt_metacall(enum QMetaObject::Call,int,void * *)" ([email protected]@@[email protected]@@[email protected]) 

error LNK2001: unresolved external symbol "public: static struct QMetaObject const Window::staticMetaObject" ([email protected]@@[email protected]@B) 

fatal error LNK1120: 4 unresolved externals 

我怎樣才能解決這些錯誤?

+1

檢查所有依賴關係...在Visual Studio上,轉到項目屬性 - >鏈接並檢查qt4二進制文件 – jose 2012-01-12 09:44:04

回答

0

您需要在使用Q_OBJECT宏或從QObject繼承的頭文件上運行moc.exe。 爲了簡單起見,只需安裝此qt vs addin,它會爲您添加所有內容。您可能需要生成一個新項目。

相關問題