1、啟動程式
gdb ./a.out
2、進來後在gdb模式,執行r開始啟動,如果要帶命令列引數,則在r後依次輸入
(gdb) r 0 1
3、進入程式後,按鍵ctrl+c進入gdb模式
program received signal sigint, interrupt.
0x0012d422 in __kernel_vsyscall ()
(gdb)
4、新增斷點方法:
(1)b 函式名 對這個函式新增斷點
(2)b 檔名 行號 對檔案某個位置加斷點
(3)n 逐行執行
(4)c 直接執行到斷點處
4.1、檢視有哪些斷點:
(gdb) info b
num type disp enb address what
1 breakpoint keep y 0x0845193e in create
at /src/test.c:916
breakpoint already hit 4 times
4.2、刪除斷開
(gdb) d 1
5、可以在執行r之前,先新增斷點,再開始啟動程式
6、在gdb模式下執行quit退出
7、檢視執行緒
info thread
8、檢視區域性變數
info local
gdb watch功能
1、核心若要支援watch功能,需要開啟
[*] kernel performance events and counters
2、新增watch使用
(gdb) watch *(char **)0x12345678
使用GDB除錯程式
gdb是gnu發布的一款功能強大的程式除錯工具。gdb主要完成下面三個方面的功能 1.啟動被除錯程式 2.讓被除錯的程式在指定的位置停住 3.當程式被停住時,可以檢查程式狀態 如變數值 假如要對程式test.c進行除錯,除錯流程為 1.編譯生成可執行檔案 gcc g test.c o test 2....
使用GDB除錯程式
上回話說 使用makefile來組織源 這回簡單地介紹下如何使用gdb來除錯我們的程式 關於gdb的其它應用將在後續的章節中逐漸深入。首先需要肯定一點,gdb是個功能異常強大的除錯工具,其本身只能執行於字元模式,但是當前眾多基於gui的偵錯程式 ide,無論是自由軟體還是商業軟體,絕大多數都使用gd...
GDB除錯程式
gdb的三個功能 1 啟動被除錯的程式 2 設定斷點 3 設定斷點之後可以檢查程式的狀態 1.編譯生成可執行檔案 注意 g 除錯選項 gcc g tst.c o tst 2.啟動gdb gdb tst 3.在main函式處設定斷點 break main 4.執行程式 run5.利用 更加豐富的 gd...