文章最後又gdb的安裝方法!
在pc機下除錯pc機程式:
gcc -g hello.c -o hello @-o specified specified exec name -g debugging message
gdb hello @debugging program
break orr b params @set breakpoint
b function name
b line numbers
b file name + line numbers
b line numbers + if condition is true
run @run program
print + variable name @display variable value
info break orr b @display all breakpoint numbers
delete breakpoint numbers @delete the numbers breakpoint
list orr l @display source code
next @step by step running ,don't entry sub function
step @step by step running ,entry sub function
continue orr c @high speed run as next breakpoint orr program end
finish @running program utile current function end
watch + variable value @for the variable control
q @exit
在開發板上除錯交叉編譯下的程式:在遠端下除錯。
1、download gdb source code
website:
2、compile gdb
# tar -xzvf gdb-7.4.tar.gz
# cd gdb-7.4
# ./configure --target=arm-linux
#make
# mkdir tmp
# make install prefix=$pwd/tmp
#cp arm-linux-gdb /bin
3、install board gdbserver:
#cd gdb/gdbserver/
#./configure --host=arm-linux
#make (把生成的gdbserver複製到board的/bin目錄下)
編譯要除錯的應用,編譯時加上-g選項
4、cross compile gdbserver :
5、debug
board ip = 210.41.141.111
host pc ip = 210.41.141.155
board:
#gdbserver 210.41.141.111:1111 ./test_debug /*1111為埠號,可以隨便設定*/
host pc:
(由於交叉編譯自帶gdb工具,所以這裡要指定路徑,不然會衝突)
#/bin/arm-linux-gdb ./test_debug
(gdb)target remote 210.41.141.111:1111
....
鏈結成功後,gdb遠端除錯和gdb本地除錯方法命令相同。
g 和gdb簡單使用
在編譯之前我們需要在系統裡安裝g gcc,它們就是linux下的c c的編譯器。如下 sudo apt get install build essential include using namespace std int main void hello display 在g 中有乙個引數 c可以只...
gcc和gdb 的使用
筆記 gcc編譯器 熟練使用 1 gcc gnu compiler 是gnu推出的多平台編譯器,可將c c 源程式編譯連線程可執行檔案,支援以下字尾 1 c c語言源 2 h 程式所包含的標頭檔案 3 i 已經預處理過的c源 檔案 4 s 組合語言源 檔案 5 o 編譯後的目標檔案 2 gcc o ...
gdb和gdbserver的安裝和使用
一 遠端除錯環境由宿主機gdb和目標機除錯stub共同構成,兩者通過串列埠或tcp連線。使用gdb標準遠端序列協議協同工作,實現對目標機上的系統核心和上 層應用的監控和除錯功能。除錯stub是嵌入式系統中的一段 作為宿主機gdb和目標機除錯程式間的乙個媒介而存在。就目前而言,嵌入式 linux系統中...