標籤:class blog code http tar com
今天下午閑著沒事嘗試在自己的PC中的CentOS上裝一個Code::Blocks,因為是Linux菜鳥折騰了一下午才基本算搞定但依然有疑惑:
在網上各種穀哥度娘最後才發現還是官方的文檔最靠譜:看這裡。
上面講的比較詳細,下面簡單總結一下安裝的步驟:
wxWidgets安裝
Code::Blocks的介面依賴於wxWidgets,所以需要先安裝它,至於wxWidgets是什麼可以百度一下,具體我也不清楚。只知道wxWidgets是一個跨平台的GUI庫,而在Linux上它依賴於GDK+,GDK+就相當於函數庫,所以不用擔心它在你的系統中肯定是有的。事實上C::B真正使用的wxWidgets是wxGDK,所以我們首先需要安裝的其實是wxGDK庫,版本要求大於2.8.0,官方文檔說libwxGDK-2.8.3有點問題,所以不推薦。
下載wxGDK:到這裡。注意選擇wxGDK,我下的是wxGTK-2.8.12.tar.gz。
解壓縮:
tar zxf wxGTK-2.8.12.tar.gzcd wxGTK-2.8.12
安裝:
mkdir build_gtk2_shared_monolithic_unicodecd build_gtk2_shared_monolithic_unicode../configure --prefix=/opt/wx/2.8 --enable-xrc --enable-monolithic --enable-unicodemakesumake installexit
安裝的路徑是/opt/wx/2.8/。
設定環境變數:
export PATH=/usr/bin:/opt/wx/2.8/bin:$PATH
然後運行如下命令:
ldconfigsource /etc/profile
ldconfig命令的作用是讓動態連結程式庫為系統所共用,source命令的作用簡單來說就是使得設定檔的修改立即生效而不需要重啟。
安裝Code::Blocks
在安裝之前還需要先確定一下有沒有安裝gcc編譯器,如果沒有yum安裝一下,很簡單:
yum install gcc-c++
注意:不是yum install g++,我一開始想當然了。
下載Code::Blocks:在這裡。我下的是tar包。
解壓縮然後依次執行下面的命令:
bootstrap
./bootstrap
bootstrap命令的作用是設定configure指令碼及其依賴關係,這個命令只需要執行一次,運行這個命令如果出現下面的錯誤:
./bootstrap: libtoolize: not found
說明機子上沒有安裝“libtool”,yum安裝下即可:
yum install libtool
重新運行
./bootstrap
可能會報錯
[[email protected] codeblocks-13.12]# ./bootstrap Found revision: ‘0‘ ‘‘libtoolize: putting auxiliary files in `.‘.libtoolize: copying file `./ltmain.sh‘libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4‘.libtoolize: copying file `m4/libtool.m4‘libtoolize: copying file `m4/ltoptions.m4‘libtoolize: copying file `m4/ltsugar.m4‘libtoolize: copying file `m4/ltversion.m4‘libtoolize: copying file `m4/lt~obsolete.m4‘configure.ac:86: warning: macro `AM_OPTIONS_WXCONFIG‘ not found in libraryconfigure.ac:87: warning: macro `AM_PATH_WXCONFIG‘ not found in libraryconfigure.ac:86: error: possibly undefined macro: AM_OPTIONS_WXCONFIG If this token and others are legitimate, please use m4_pattern_allow. See the Autoconf documentation.configure.ac:87: error: possibly undefined macro: AM_PATH_WXCONFIG
解決方案:
cp ../wxWidgets-2.8.12/wxwin.m4 /usr/share/aclocal
configure
./configure --with-wx-config=/opt/wx/2.8/bin/wx-config
注意:如果如果wxGDK不是安裝在預設的路徑這裡需要--with-wx-config指定,否則make過程中會提示有error。
接下來安裝等待即可:
makemake install
等安裝完成後,就可以在Application中找到C::B的表徵圖了。
我剛啟動時,會出現的錯誤是:
之後我用命令啟動codeblocks出現如下錯誤提示:codeblocks: relocation error: codeblocks: symbol _Z23wxHandleFatalExceptionsb, version WXU_2.8 not defined in file libwx_baseu-2.8.so.0 with link time reference
這個錯誤沒找到原因,不過我重啟電腦之後,這個錯誤就消失了,然後就會出現下面的錯誤,按照下面的步驟解決就可以使用了。
但是我安裝後點它卻發現啟動不起來,通過終端命令啟動發現錯誤資訊如下:
意思是找不到libwx_gtk2u-2.8.s0.0這個動態連結程式庫,解決方案是設定LD_LIBRARY_PATH變數:
export LD_LIBRARY_PATH =/opt/wx/2.8/lib/
這種方式是臨時的設定環境變數,關閉shell就會失效,需要永久的設定環境變數參看這裡這裡,修改/etc/profile檔案,加入下面這行:
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/opt/wx/2.8/lib"
運行一下
source /etc/profile