說明:文件裡提到的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 ...