在Code::Blocks中編譯和使用wxWidgets3.0.0教程
註意,編譯Code :: Blocks的對wxWidgets的3.0.0鏈接不是很穩定,但該庫至少可以被正確編譯,(只是使用的時候可能會有問題);CodeBlocks開發商都在努力開發使之更穩定。
這些是使用Code :: Blocks編譯wxWidgets的說明。它們起初用於準備編譯Code :: Blocks本身,但也可以是用於編譯wxWidgets本身。
雖然這些指令是針對Windows操作系統中,但通過細小的調整可以應用到其他平臺,因為我們使用的MinGW的。
內容
|
MinGW的安裝
Code :: Blocks安裝MinGW教程的可以在這裏找到。MinGW的安裝
安裝wxWidgets的源代碼
wxWidgets的3.0.0的發行可以在找到wxWidgets的下載網站 。(請註意,還有一個可WinHelp的文件。)您可以在安裝程序和一個壓縮文件之間進行選擇。你可以只使用zip文件,因為安裝程序也是一個壓縮版本。
如果使用普通的zip版本,請確保使用完整路徑解壓。否則,該目錄將無法正確創建。
註:對於這些指令其余部分,我們稱之為wxWidgets的目錄<WXWIN>。你必須將它更改為您相應的目錄(如“c:\wxMSW-3.0.0\wxWidgets-3.0.0”)。
註意:您不需要MSYS。此外,你不能有MSYS在你的路徑,或者wxWidgets的編譯將失敗。因此,如果你已經安裝MSYS,確保<MSYS> \ BIN是不是在你的路徑編譯的wxWidgets之前。 wxWidgets的,必須從“常規”命令行(cmd.exe的一樣)編譯,而不是從一個類似Unix的外殼。可能會出現相同的問題,如果Cygwin的是在路徑中。
註:對於這些指令其余部分,我們稱之為MinGW的目錄<MINGW>。
檢查make版本
如果您沒有安裝MinGW,你必須確保你正在使用的是比較新的版本以便能夠正確的編譯。打開命令提示符,然後鍵入:
cd <MINGW>\bin mingw32-make -v
該版本應該顯示為3.80或更高版本。
wxWidgets的構建
改變目錄和路徑的設置
要編譯wxWidgets,打開命令提示符窗口,並切換到wxWidgets目錄:
cd /d <WXWIN>\build\msw
SET PATH=<MINGW>\bin
註意: 這通常是 SET PATH=C:\MingGW\bin
清理wxWidgets的代碼
現在,清理源碼:
mingw32-make -f makefile.gcc USE_XRC=1 SHARED=1 MONOLITHIC=1 BUILD=release UNICODE=1 USE_OPENGL=1 VENDOR=cb CXXFLAGS="-fno-keep-inline-dllexport" clean
註意:請確保您使用的正是這一步,並為下面的生成步驟相同的選項。clean目標使用這些變量,僅清理生成的目標文件和庫文件的指定版本。(它不會清除所預期的文件,如果這些變量是不相同的。)
註意:如果您仍然有問題,清洗後進行編譯,你可以嘗試構建\ MSW目錄下手動刪除gcc_dll目錄。此目錄是目標文件的存儲位置。
構建wxWidgets的代碼
當一切都幹凈就可以開始編譯的wxWidgets:
的mingw32 - 讓-F makefile.gcc USE_XRC = 1 SHARED = 1單片= 1 BUILD =釋放的UNICODE = 1 USE_OPENGL = 1供應商= CB CXXFLAGS =“-FNO - 保持 - 直列DLLEXPORT”>的log.txt 2>&1
註意:如果你想編譯wxWidgets的另一個版本(調試或非Unicode),你仍然要確保你的鏈接Code :: Blocks的建立一個單片的版本(一個大的DLL)。
耐心。這個步驟需要時間。確保沒有任何編譯錯誤,然後再繼續。
編譯Code :: Blocks
Code :: Blocks項目中使用
不需要任何補丁編譯Code :: Blocks的與wxWidgets的3.0,只需使用項目/工作區,文件名 ??稱中的_wx30並調用update30.bat更新的資源。
這並不意味著,一切運行完全無缺陷的,但我們正在努力就可以了。
一如往常,補丁是受歡迎的。
設置路徑
最後才編譯Code :: Blocks的本身,你需要設置的路徑:
- 打開Code :: Blocks的項目(CodeBlocks_wx30.cbp)。
- 它會問你要定義一個全局變量命名為“WX30”
- 將路徑設置為在已安裝的wxWidgets(如“c:\wxMSW-3.0.0\wxWidgets-3.0.0”)。
- 全局變量cb_release_type設置為“-G”。 (當你輸入的文字沒有引號是必要的)
- 編譯Code :: Blocks的。
註:zip.exe文件應該在你的PATH中,這樣他們就可以正確運行後步驟,請參閱1.6 zip.exe約zip.exe一些細節
後編譯的步驟
當編譯過程完成後,只需運行update30.bat腳本。這將確保所有的資源文件Code :: Blocks的用途是在正確的地方,並及時更新。
參考
- 論壇討論: 回復:wxWidgets的3.0和Code :: Blocks的文件的問題?
- 從源代碼在Windows上安裝Code :: Blocks的
- 需要註意的是PCH被禁用Codeblocks_wx30.cbp,因為它會導致GCC建立的錯誤(在GCC 4.8.x的bug 問題56926 -崩潰(不ICE),而編譯升壓。數學 ),見這裏的討論:回復:wxWidgets的3.0和Code :: Blocks的文件的問題? 和修補程序使用MinGW的GCC 4.8.1編譯Code :: Blocks的對wxWidgets的3.0
在Code::Blocks中編譯和使用wxWidgets3.0.0教程