QT編譯
打開 “Visual Studio 命令提示”.在“Visual Studio 命令提示”下定位到程序目錄運行:configure -platform win32-msvc2008 -nomake demos -nomake examples -no-opengl -no-qt3support
.
運行 “nmake”命令
.
使用了Q_OBJECT宏之後在編譯的時候會遇到下面的錯誤:
--------------------Configuration: testqt - Win32 Debug--------------------
Linking...
test.obj : error LNK2001: unresolved external symbol "public: virtual int __thiscall MyMainWindow::qt_metacall(enum QMetaObject::Call,int,void * *)" (?qt_metacall@MyMainWindow@@UAEHW4Call@QMetaObject@@HPAPAX@Z)
test.obj : error LNK2001: unresolved external symbol "public: virtual void * __thiscall MyMainWindow::qt_metacast(char const *)" (?qt_metacast@MyMainWindow@@UAEPAXPBD@Z)
test.obj : error LNK2001: unresolved external symbol "public: virtual struct QMetaObject const * __thiscall MyMainWindow::metaObject(void)const " (?metaObject@MyMainWindow@@UBEPBUQMetaObject@@XZ)
debug/testqt.exe : fatal error LNK1120: 3 unresolved externals
Error executing link.exe.
testqt.exe - 4 error(s), 0 warning(s)
解決方法,使用moc命令自動生成moc_*.cpp文件,具體操作入下圖: