Centos搭建GTK+Codeblock完整版

來源:互聯網
上載者:User

一、所需的源碼包
1. GNU make 工具
2. GNU gettext 軟體包(當系統上沒有 gettext() 函數的時候需要)
3. GNU libiconv 庫(當系統上沒有 iconv() 函數的時候需要)
4. fontconfig庫
fontconfig 是提供系統範圍內字型設定,定製和允許應用程式訪問的函數庫。
5. FreeType庫
GTK+(基於DirectFB)的字型繪製是通過pango+freetype+fontconfig三者協作來完成的,其中, fontconfig負責字型的管理和配置,freetype負責單個字元的繪製,pango則完成對文字的排版布局。Freetype是一個操作字型的 函數庫,它不但可以處理點陣字型,也可以處理多種向量字型,包括truetype字型,為上層應用程式提供了一個統一的調用介面。
6. libpng庫
libpng軟體包包含 libpng 庫,這些庫被其他程式用於讀寫png檔案。PNG 庫是用來創立和操作PNG 格式的圖形檔案.PNG 格式是設計來替代GIF,它對於更小範圍的TIFF(標記圖象檔案格式)來說, 有了很多的進步和拓展並且減少了關於專利權的麻煩.
7. jpegsrc庫
能夠使用JPEG演算法壓縮檔。
8. tiff庫
tiff庫被很多程式用於讀寫tiff檔案。
9.pkg-config 工具
pkgconfig 包括 pkg-config 程式,用來在編譯指令碼中向編譯器傳遞標頭檔案包含路徑或庫檔案路徑。
對於支援 pkg-config 工具的 GTK+ 及其依賴庫來說,庫的標頭檔的搜尋路徑的設定變成了對 .pc 檔案搜尋路徑的設定。.pc 檔案的搜尋路徑是通過環境變數 PKG_CONFIG_PATH 來設定的,pkg-config 將按照設定路徑的先後順序進行搜尋,直到找到指定的 .pc 檔案為止。
10. GLib 庫
GLib是GTK+和GNOME工程的基礎底層核心程式庫,建立 GDK 和 GTK 應用程式時該庫可提供許多有用的定義和函數,是一個綜合用途的實用的輕量級的C程式庫,它提供C語言的常用的資料結構的定義、相關的處理函數,有趣而實用 的宏,可移植的封裝和一些運行時機能,如事件迴圈、線程、動態調用、對象系統等的API。
11. ATK 庫
ATK 包包含了 ATK 庫。ATK是可訪問性工具箱(Accessibility Toolkit)的簡稱。ATK 為所有的GTK2程式提供瞭解決 Accessibility 需求的架構。
12. Cairo 庫
Cairo,是一個跨平台的開放原始碼的向量圖形函數庫,可以提供高品質的顯示和列印輸出。Cairo提供一個穩定的使用者層API,它可以提供現代 化的圖形處理管理能力,如繪製和填充,映射轉換,合成(注意,是合成)與改變alpha半透明映像,高真文本顯示等等。能夠在不同的媒體上實現相同的輸 出。
13. Pango 庫
Pango 庫提供了底層的文本編排繪製產生函數, 一套產生整段文本布局的高層函數和協助編輯多國文本的函數。
14. GTK+ 庫
其中前五項一般比較新的Linux版本中,系統都會內建。需要注意的一個問題是如果GTK的安裝路徑為/opt/gtk時,在 PKG_CONFIG_PATH中除了要添加/opt/gtk/lib/pkgconfig之外,還有加上/usr/lib/pkgconfig。因為安 裝在系統的庫其.pc檔案都在/usr/lib/pkgconfig中,想要在安裝GTK時用到這些系統內建的庫時,必須把路徑設定清楚。
在收集安裝GTK所需的源碼包時最重要,也是最容易忽略的一個問題就是各個包之間版本的匹配問題。我在安裝GTK就忽略了這個問題,結果走了很多彎 路。解決這個問題最簡單的辦法就是登陸GTK+ 的網站":ftp://ftp.gtk.org/pub/gtk,在上面下載各種源碼包。在這個網站上,每個GTK版本相容的源碼包都放在一個檔案夾下。 例如我選擇安裝GTK v2.6,只要在ftp://ftp.gtk.org/pub/gtk/v2.6中下載各個包即可。不過選擇V2.6的朋友要嚴重注意一個問題,支援GTK V2.6的pango包有兩個版本-1.8.0、1.8.1,1.8.0是一個失敗的版本,如果選擇它,在安裝GTK時就會死活找不到pango庫。我當 時就是這個版本的受害者,花了很長時間也無法在安裝GTK時串連pango庫,後來在網上看到一個老外說這個版本有bug,只能使用1.8.1版本。媽 的!這不坑人嗎!
根據依賴關係的要求,庫的安裝要按照這樣的先後順序進行:GLib、Atk、Cairo、Pango、Gtk+。
二、設定
主要包括對LD_LIBRARY_PATH和PKG_CONFIG_PATH的設定,具體如下:
> export LD_LIBRARY_PATH=/opt/gtk/lib:$LD_LIBRARY_PATH
> export PKG_CONFIG_PATH=/opt/gtk/lib/pkgconfig:$PKG_CONFIG_PATH
注意,如果想要使用系統中已有的fontconfig、FreeType等庫,需要加上系統原有的庫:
> export LD_LIBRARY_PATH=/usr/lib
> export LD_LIBRARY_PATH=/opt/gtk/lib:$LD_LIBRARY_PATH
> export PKG_CONFIG_PATH=/usr/lib/pkgconfig
> export PKG_CONFIG_PATH=/usr/X11R6 /lib/pkgconfig:$PKG_CONFIG_PATH
> export PKG_CONFIG_PATH=/opt/gtk/lib/pkgconfig:$PKG_CONFIG_PATH
容易被人忽略的一點是LD_LIBRARY_PATH和PKG_CONFIG_PATH這兩個環境變數只對當前的終端視窗有效。如果到了沒有進行上述設定的終端視窗中,pkg-config 將找不到新安裝庫的.pc 檔案、從而可能使後面進行的安裝無法進行。(自己犯的一個簡單卻造成嚴重後果的錯誤,吐血提醒大家哦)
三、源碼包的安裝
我安裝的GTK版本為v2.6,用到的源碼包包括:jpegsrc.v6b.tar.gz、libpng-1.2.8.tar.bz2、tiff- v3.6.1.tar.gz、pkgconfig-0.15.0.tar.gz、glib-2.6.6.tar.bz2、atk- 1.9.0.tar.bz2、cairo-1.2.4.tar.gz、pango-1.8.1.tar.bz2、gtk+-2.6.9.tar.bz2。 把它們都放在root的主目錄下。
將 GTK+ 及其依賴庫設定安裝到同一個目錄/opt/gtk下、而不是每一個庫佔用一個不同的目錄,可以給以後的庫的設定帶來方便。而且,在將來不再需要這個版本的 GTK+ 及其依賴庫的時候可以通過刪除這個目錄將它們簡單地去除。
1.安裝pkgconfig

> tar zxvf pkgconfig-0.15.0.tar.gz
> cd /root/pkgconfig-0.15.0
> ./configure
> make
> make install
每個過程結束後,都可以用用 echo $? 檢查是否執行安裝成功。如果輸出是 0,說明配置成功;0 之外的數字說明配置失敗。在 Linux 系統上,可以用這個方法檢查一個命令或程式在其結束後返回給系統的值是多少。一般 0 代表成功,非 0 表示程式異常退出。
2.安裝glib
> tar zjvf glib-2.6.6.tar.bz2
> cd /root/ glib-2.6.6
>./configure --prefix=/opt/gtk
>make
>make install
3.安裝atk
> tar zjvf atk-1.9.0.tar.bz2
> cd /root/ atk-1.9.0
>./configure --prefix=/opt/gtk
>make
>make install
4.安裝cairo
> tar zxvf cairo-1.2.4.tar.gz
> cd /root/ cairo-1.2.4
>./configure --prefix=/opt/gtk --with-x --enable-win32=no
>make
>make install
5.安裝Pango
> tar zxvf cairo-1.2.4.tar.gz
> cd /root/ cairo-1.2.4
>./configure --prefix=/opt/gtk --libdir=/opt/gtk/lib --with-x
>make
>make install
6.安裝libpng
> tar zjvf libpng-1.2.8.tar.bz2
> cd /root/ libpng-1.2.8
> make prefix=/opt/gtk \ZLIBINC=/opt/gtk/include ZLIBLIB=/opt/gtk/lib -f scripts/makefile.linux
>make prefix=/opt/gtk install -f scripts/makefile.linux
7.安裝libtiff(就是tiff)
> tar zxvf tiff-v3.6.1.tar.gz
> cd /root/ tiff-v3.6.1
> ./configure --prefix=/opt/gtk --noninteractive \ --with-DIR_MAN=/opt/gtk/share/man
> make
> make install
8.安裝libjpeg(就是jpegsrv)
> tar zxvf jpegsrc.v6b.tar.gz
> cd /root/jpeg-6b
> ./configure --enable-static --enable-shared --prefix=/opt/gtk
> make
> make install
註:jpeg預設不share library,因此要手工指定--enable-shared,一般安裝lib時這一點都是要注意的。
10.安裝gtk
> tar zjvf gtk+-2.6.9.tar.bz2
> cd /root/ gtk+-2.6.9
> ./configure --prefix=/opt/gtk --with-x --without-libjpeg
> make
> make install
四、檢驗是否正確安裝GTK
為了檢驗是否正確安裝GTK,利用GTK編寫一個簡單的程式,這個程式建立 200x200 大小的視窗
五:linux平台下編譯安裝wxGTK(以wxGTK-2.6.2 為例)
下載wxGTK-2.6.2.tar.gz,所在位置http://www.wxwidgets.org。
下載後,輸入如下命令進行安裝:
tar zxvf wxGTK-2.6.2.tar.gz
cd wxGTK-2.6.2
./configure --enable-xrc --enable-monolithic --enable-unicode
make
make install
如果沒有錯誤提示,說明安裝比較順利,在編譯過程比較慢。
3、庫檔案路徑指向正確
因為,我們在安裝wxGTK時沒有指定路徑,因此,wxGTK被裝到了/usr/local/lib下,當然如果指向了路徑,
即加入“-prefix=/usr”這個參數後,可以省略這一步。
庫檔案路徑指向方法:
vi /etc/ld.so.conf
在檔案最後輸入:
/usr/local/lib
加入後,運行:
/sbin/ldconfig
4、安裝驗證
可以通過以下操作的輸出檢查安裝是否正確:
wx-config --prefix
wx-config --libs
which wx-config
5.下載Code::Block
在http://www.codeblocks.org/downloads/下載
:http://ncu.dl.sourceforge.net/sourceforge/codeblocks/codeblocks-8.02-src.tar.bz2
下載後輸入如下命令進行安裝:
tar jxf codeblocks-8.02-src.tar.bz2
cd codeblocks-8.02
./configure –prefix=/usr
make
make install
如果沒有錯誤提示,說明安裝比較順利,在編譯過程比較慢。
6、啟動並建立捷徑
在案頭上點滑鼠右鍵,選擇“建立啟動器”,並輸入如下路徑:
/usr/bin/codeblocks
註:搭建完成後,如不能運行codeblocks,請把selinux關閉重新啟動然後再試下.
本文出自 “自由之家” 部落格,
出處http://yuliang.blog.51cto.com/626833/276195

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.