目的:
對編譯好的程式進行除錯工作,主要功能:
1、啟動被除錯程式;
2、讓被除錯程式在指定位置停住;
3、當程式停住時,可檢查程式狀態(如變數值)。
步驟:1、編譯生成可執行檔案:
gcc -g test.c -o test
2、啟動gdb: gdb test
3、設定斷點
4、執行程式:run
5、單步執行:next
6、繼續執行:continue
說明:當執行gdb hello.c,執行(r)時,如果提示需要debuginfo包,這是需要
安裝glibc-debuginfo和glibc-debuginfo-common包。
在centos6.5上,需要的包為glibc-debuginfo-2.12-1.132.el6.x86_64.rpm、
glibc-debuginfo-common-2.12-1.132.el6.x86_64.rpm。
安裝後,再次執行gdb,將順利進行。
gdb命令:
l(list) 檢視程式
b(break) 函式名 在某函式入口處設斷點
b(break) 行號 在指定行號新增斷點
b(break) 檔名:行號 在指定檔案的指定行號新增斷點
b(break) 行號 if 條件 當條件為真時,指定行號處斷點生效
info b 檢視所有設定的斷點
delete 斷點編號 刪除斷點
r(run) 開始執行程式
n(next) 單步運程式(不進入子函式)
s(step) 單步運程式(進入子函式)
c(continue) 繼續執行程式
p(print)變數名 檢視指定變數值
finish 執行程式,知道當前函式結束
watch 變數名 對指定變數進行監控
q(quit) 退出gdb
GDB偵錯程式
偵錯程式gdb 一 啟動和退出gdb gdb除錯的物件是可執行檔案,而不是程式的源 如果要使乙個可執行檔案可以被gdb除錯,那麼在使用編譯器gcc編譯程式時需要加入 g選項。gdb除錯乙個程式的命令格式是 gdb 程式檔名 也可以在linux提示符下,直接輸入gdb,然後使用file命令裝入要除錯的...
gdb偵錯程式
在使用gdb偵錯程式之前,必須在編譯程式時加上 g選項 功能 顯示上次內容之前或之後的10行內容,首次使用顯示main 函式之前或之後的10行內容 命令 list 簡稱 l 功能 顯示引數行之前和之後的10行內容.命令 list line number 簡稱 l 10 功能 顯示原始檔從一行到另一行...
gdb偵錯程式
gdb是gnu發布的一款強大的除錯功能 gdb主要完成下面三個方面的功能 1 啟動被除錯程式 2 讓被除錯的程式在指定的位置停住 3 當程式停住時,可以檢視程式的狀態 變數值 gcc g test.c o test 生成除錯資訊 gdb test 啟動gdb gdb除錯工具相關命令 gdb run ...