QTH編譯
『壹』 怎樣編譯 libvlc-qt windows
QtCreator是QT自帶的開發工具,是學習QT非常好的參考資源.
本文提供對編譯QtCreator的簡單描述
(理論上官網發布的都是可以編譯的,但實際編譯時候會遇到一些問題,本文記錄下解決方法)
編譯環境:Windows 7 X64 + Visual Studio 2010 + qt5.0.2
編譯過程:
1.解壓縮qt-creator-2.7.0-src(源碼從qt官網下載)
2.vs2010中,用qt vsaddin打開"qt-creator-2.7.0-src\qtcreator.pro",等待導入完成(需要一定時間,耐心等候)
3.執行編譯。編譯過程可能會有多種錯誤,包括
(a) 錯誤:找不到某個json文件。
解決方法:打開出錯project,在工程中加入json文件就可以。
如果文件系統中不存在這個json文件,則從另外的目錄拷貝一個過來,簡單修改一下內容就可以。
(b) 錯誤:編譯moc生成的cpp文件時,提示找不到某個.h文件。
解決方法:用ultraEdit打開出錯的vcxproj文件,刪除moc.h文件時參數中對該.h文件的強制引用,
(c) 錯誤:找不到DATA_PATH定義。
解決方法:查找出錯工程屬性中預定義變數列表,復制DATA_PATH的預定義內容到源代碼中。
4.修改完編譯錯誤後,重新編譯。因為循環依賴問題,可能要重復多編譯幾次,最終編譯成功。
5.vs2010中,F5運行qtcreator這個project。qtcreator運行成功,
但是會發現qtcreator中的Design標簽頁總是空的,要解決這個問題,繼續執行以下步驟。
6.vs2010中,依次用qt vsaddin打開以下工程,並執行編譯
"qt-creator-2.7.0-src\src\plugins\qmldesigner\qmldesigner.pro"
"qt-creator-2.7.0-src\src\plugins\qmlprojectmanager\qmlprojectmanager.pro"
"qt-creator-2.7.0-src\src\plugins\qmlprofiler\qmlprofiler.pro"
7.運行qtcreator,此時可以發現qtcreator和官網預編譯的版本完全一樣了。
『貳』 visual studio編譯程序時,error msb6006: cmd.exe exited with code1
Visual Studio編譯程序時遇到「error MSB6006: cmd.exe exited with code 1」錯誤,通常意味著在編譯過程中,cmd.exe執行了某個命令但失敗了。以下是一些可能的原因及解決方法:
檢查項目屬性中的構建事件:
問題描述:項目中可能包含不正確的命令行或構建事件,導致編譯失敗。
解決方法:打開項目屬性,檢查預構建事件、後構建事件等構建事件中的命令行,確保所有命令行都是正確且能夠成功執行的。
CMake配置問題:
問題描述:如果是在使用CMake生成工程文件後遇到這個錯誤,可能是因為CMake配置過程中某個命令失敗了。
解決方法:檢查CMake的配置過程,確保所有指定的路徑和命令都是有效的。特別是如果使用了SVN等版本控制工具,要確保指定的路徑是一個有效的SVN工作副本。
CUDA編譯路徑問題:
問題描述:在非默認路徑下安裝Visual Studio並使用CMake編譯CUDA程序時,可能因CUDA默認的VS安裝路徑與實際安裝路徑不符而導致錯誤。
解決方法:在CMake-gui中找到CUDA_HOST_COMPILER這一項,將其改為自己編譯的路徑,確保CUDA能夠正確找到Visual Studio的編譯器。
Qt項目文件配置問題:
問題描述:對於Qt項目,這個錯誤可能是因為新添加的.ui、.h、.cpp文件沒有參與編譯,或者qrc文件沒有生成對應的.cpp文件。
解決方法:檢查Qt項目的文件配置,確保所有新添加的文件都已正確配置並參與編譯。同時,檢查qrc文件是否已正確生成對應的.cpp文件。
如果以上方法都不能解決問題,建議查看更詳細的構建日誌,以便找到具體的錯誤原因。構建日誌中通常會包含更詳細的錯誤信息,有助於定位問題所在。