gdb便利用法

2022-05-17 23:57:37 字數 730 閱讀 8539

1,不退出gdb,執行shell命令

(gdb) shell ls

a.out foo more.c pipe1.c test1.c test.c

(gdb) shell gcc test.c -g

2,不退出gdb,執行make命令

(gdb) make
3,儲存gdb 命令的輸出到乙個檔案裡

4,path和環境變數

5,除錯乙個已經在執行的程序

(gdb) attach process-id
6,checkpoint功能

在某些作業系統(目前只在gnu/linux 上),gdb 可以儲存乙個程式狀態的快照,稱為檢查點,以後可以跳回。跳回到檢查點會撤銷所有在檢查點之後的變化。這些變化包括記憶體,暫存器,甚至系統狀態(有些限制)。這樣可以有效的及時回到在檢查點設定的狀態。

因此,如果你單步除錯到你認為你接近到快要發生錯誤的地方,你就可以儲存乙個檢查點。接著,如果你不經意的走的太遠錯過了關鍵的狀態,你可以回到檢查點後再從那裡開始,而不需要從頭啟動程式。

檢查點對於需要很長時間或者單步除錯裡bug 發生地方很遠的情況下很有幫助。

c/c++ 學習互助qq群:877684253

GDB 基本用法

在原來的的選項上再加上 g 選項,如 gcc g wall o2 o test test.c 或者 gcc g o test test.c。有一點需要注意的是除錯時最好去掉優化選項,比如內聯 inline 函式 優化 去掉函式呼叫,而將函式 在呼叫的位置展開 該函式名上就無法設定斷點。這是因為內聯函...

GDB基本用法

相關 gdb的使用 當程式出錯並產生core 時 快速定位出錯函式的辦法 gdb 程式名 core檔名 一般是core,也可能是core.x 除錯程式使用的鍵 r run 執行.程式還沒有執行前使用 c cuntinue 繼續執行。執行中斷後繼續執行 q 退出 kill 終止除錯的程式 h help...

GDB基礎用法

gdb gnu debugger 是gcc的除錯工具。其功能強大,現描述如下 gdb主要幫忙你完成下面四個方面的功能 1.啟動你的程式,可以按照你的自定義的要求隨心所欲的執行程式。2.可讓被除錯的程式在你所指定的調置的斷點處停住。斷點可以是條件表示式 3.當程式被停住時,可以檢查此時你的程式中所發生...