文章作者:姜南(Slyar) 文章來源:Slyar Home (www.slyar.com) 轉載請註明,謝謝合作。
在Linux上利用源碼包安裝wxWidgets並構建多平臺編譯環境,簡單記錄一下,備忘。
--Linux distribution:Ubuntu 10.04.3 LTS (Lucid Lynx)
--wxWidgets version:2.8.12
--gcc version:4.4.3
1、基本編譯環境安裝。
安裝編譯工具(gcc之類)
sudo apt-get install build-essential
安裝X11
sudo apt-get install libx11-dev
安裝GTK需要的一堆東西
sudo apt-get install gnome-core-devel
剩下的缺啥裝啥就行了,檢查一下pkg-config
2、下載wxWidgets源碼包,因爲要構建多平臺編譯環境,因此選擇wxAll版本,全部包含。
slyar@slyar-desktop:~$ wget http://prdownloads.sourceforge.net/wxwindows/wxWidgets-2.8.12.tar.gz
3、解壓縮到當前目錄
slyar@slyar-desktop:~$ tar –zxvf wxWidgets-2.8.12.tar.gz
4、這裏我使用GTK和X11平臺來演示,我把 /opt 作爲我編譯後程序存放的目錄,分別創建2個子目錄
slyar@slyar-desktop:~$ sudo mkdir /opt/buildgtk
slyar@slyar-desktop:~$ sudo mkdir /opt/buildx11
5、編譯wxGTK
slyar@slyar-desktop:~$ cd /opt/buildgtk
slyar@slyar-desktop:/opt/buildgtk$ sudo /home/slyar/wxWidgets-2.8.12/configure --with-gtk
slyar@slyar-desktop:/opt/buildgtk$ sudo make
slyar@slyar-desktop:/opt/buildgtk$ sudo make install
slyar@slyar-desktop:/opt/buildgtk$ sudo ldconfig
6、編譯wxX11
slyar@slyar-desktop:~$ cd /opt/buildx11
slyar@slyar-desktop:/opt/buildx11$ sudo /home/slyar/wxWidgets-2.8.12/configure --with-x11
slyar@slyar-desktop:/opt/buildx11$ sudo make
slyar@slyar-desktop:/opt/buildx11$ sudo make install
slyar@slyar-desktop:/opt/buildx11$ sudo ldconfig
7、此時wxGTK與wxX11就都編譯並且安裝完成了,以後編譯程序的時候只需要調用不用的類庫即可。可以看到編譯好的wxWidgets類庫存放在/usr/local/lib/wx/include/下
8、在用戶目錄下編寫一個wxWidgets程序,用sample也可以。這裏我只用最簡單的auidemo.cpp,單文件,可以不寫makefile了。
9、使用wxGTK編譯,即調用GTK的類庫
slyar@slyar-desktop:~/aui$ g++ auidemo.cpp /opt/buildgtk/wx-config --libs --cxxflags
-o aui_gtk
10、使用wxX11編譯,即調用X11的類庫
slyar@slyar-desktop:~/aui$ g++ auidemo.cpp /opt/buildx11/wx-config --libs --cxxflags
-o aui_x11
11、查看生成的bin文件,我就不執行了,X11的很難看= =
12、默認的wx-config存放在下面這裏,實際上它也只是一個ln而已,我們可以自己修改。但使用多平臺編譯的時候就需要我們自己定義類庫路徑了。
slyar@slyar-desktop:/$ ls -l /usr/local/bin/wx-config
/usr/local/bin/wx-config -> /usr/local/lib/wx/config/x11univ-ansi-release-2.8
轉載請註明:Slyar Home » Linux下的wxWidgets多平臺編譯環境搭建