linuxeden管理團隊c-aries
gtk+使用glade進行介面設計能有效地加快專案進度和提高程式的可維護性。
自從gtk2.12,gtk+已經內建了gtkbuilder,用以代替使用glade編寫的程式所依賴的libglade庫檔案。
下面介紹如何使用gtkbuilder寫乙個最基本的介面。
1. 使用glade設計gtk+介面,儲存為glade檔案
2. 用gtk-builder-convert指令碼(gtk+2.0預設安裝該指令碼)將glade**轉換成支援gtkbuilder的**
3. 編寫程式,呼叫gtkbuilder
4. 編譯出可執行程式,執行
$ make
gcc `pkg-config --cflags --libs gtk+-2.0` fsf.c
$ ./a.out
效果如下圖:
題外話:
我是在閱讀cheese的源**中發現gtkbuilder的,然後又發現了個東西
"pkg-config --cflags --libs gtk+-2.0"這一句是怎麼得到的?
$ ls /usr/lib/pkgconfig/gtk+-2.0.pc
/usr/lib/pkgconfig/gtk+-2.0.pc
$ cat /usr/lib/pkgconfig/gtk+-2.0.pc
prefix=/usr
exec_prefix=$
libdir=/usr/lib
includedir=$/include
target=x11
gtk_binary_version=2.10.0
gtk_host=i486-pc-linux-gnu
name: gtk+
description: gimp tool kit ($ target)
version: 2.12.12
requires: gdk-$-2.0 atk cairo
libs: -l$ -lgtk-$-2.0
cflags: -i$/gtk-2.0 $
呵呵,這下明白了吧
比如說編譯呼叫了gstreamer庫的程式,就可以使用
pkg-config --cflags --libs gstreamer-0.10
pkgconfig的預設目錄/usr/lib/pkgconfig下有gstreamer-0.10.pc這一資料檔案
$ ls /usr/lib/pkgconfig/gstreamer-0.10.pc
/usr/lib/pkgconfig/gstreamer-0.10.pc$
g 編譯工具使用
1 預處理 展開巨集,去掉注釋資訊等 gcc e codetest.c o codetest.i 2 生成物件檔案 gcc c codetest.i o codetest.o 3 生成可執行檔案 gcc codetest.o o codetest 至此,生成了可執行檔案codetest,在命令列下執...
g 編譯使用方法
用g 編譯單個原始檔myprog.cc很簡單,只要把檔名當引數傳給g 就行了。g myprog.cc ls l rwxr xr x 1 wvh users 13644 oct 5 16 17 a.out rw r r 1 wvh users 220 oct 5 16 17 myprog.cc 預設情...
g 和gdb簡單使用
在編譯之前我們需要在系統裡安裝g gcc,它們就是linux下的c c的編譯器。如下 sudo apt get install build essential include using namespace std int main void hello display 在g 中有乙個引數 c可以只...