GTK編譯與除錯

2021-06-02 15:19:42 字數 1515 閱讀 4506

說明:文件裡提到的work是在跟目錄下的:/work

/work

一: gtk debug 版本編譯:

假定你把gtk+-2.20.0庫放在/work/gtk+-2.20.0/目錄下面。

1. root@ubuntu:/work/gtk+-2.20.0/# ./configure --enable-debug=yes –without-libtiff

note:如果提示找不到glib-2.0 ,可以執行 apt-get install glib* 命令安裝。

2.  root@ubuntu:/work/gtk+-2.20.0/#  make

3. root@ubuntu:/work/gtk+-2.20.0/#  export ld_library_path=/work/gtk+-2.20.0/gtk/.libs:/work/gtk+-2.20.0/gdk/.libs/

4. root@ubuntu:/work/gtk+-2.20.0/#  set solib-search-path /work/gtk+-2.20.0/gtk/.libs:/work/gtk+-2.20.0/gdk/.libs/

然後把在你自己想除錯的應用程式編譯的時候編譯成debug模式,在你自己的程式就可以跟到gtk或者gdk庫裡面了。如果有跟不到的庫,那就編 譯相應的庫,把相應庫的路徑設定上,通過set solib-search-path $your so libraru path$。

using ./examples/helloworld for example.

5.  root@ubuntu:/work/gtk+-2.20.0/#   cd ./examples/helloworld

change line 11: $(cc) helloworld.c  -o helloworld $(cflags) `pkg-config gtk+-2.0 --cflags --libs`

to           $(cc) helloworld.c  -g -o helloworld $(cflags) `pkg-config gtk+-2.0 --cflags --libs`

7.root@ubuntu:/work/gtk+-2.20.0/examples/helloworld# make

8 root@ubuntu:/work/gtk+-2.20.0/examples/helloworld# gdb helloworld

(gdb) b 88

breakpoint 1 at 0x8048b67: file helloworld.c, line 88.

(gdb) r

breakpoint 1, main (argc=1, argv=0xbffff324) at helloworld.c:88

88        gtk_widget_show (button);

ps: gdb commands:

b:breakpoint

s: step into

n: next

bt : print call stacks

l: list code

linux c 編譯 與除錯

log.h ifndef log h.h define log h.h include include class cllog endif log.cpp main.cpp include log.h include int main int i 8 int j i cllog log log.se...

Chrome編譯與除錯

1.編譯問題 還有一部分是目錄放的不對,比如trunk deps third party裡的全部子目錄,應該放到trunk src third party裡,所以要將它們全部copy過去.b.編譯。編譯時出的主要問題 1.先覺條件沒有做。比如沒有安裝windows更新包,vs補丁包,等等,這一步可以...

編譯安裝gtk 2 8 0

安裝gtk 2.8.0需先安裝完整的x11r6 目錄結構為 src gtk src gtk atk 1.4.1.tar.g src gtk cairo 1.8.10.tar.gz src gtk glib2 src gtk glib2 gettext 0.18.1.1.tar.gz src gtk ...