安裝
# wget http://cgdb.me/files/cgdb-0.6.7.tar.gz
# tar -zvxf cgdb-0.6.7.tar.gz
# cd cgdb-0.6.7
# ./configure --prefix=/usr/local
# make && make install
使用
1:cgdb分爲上下兩欄,上面類似於vi窗口(就稱之爲vi窗口吧)顯示對應的代碼,下面gdb窗口進行調試操作,上下窗口連動,也就是說vi窗口裏顯示的代碼會跟隨gdb窗口裏調試的位置同步進退。
2:按esc鍵可讓輸入焦點進入到vi窗口,再按 i 鍵回到gdb窗口。按其它鍵也可以進入到vi窗口,比如小鍵盤上的按鍵(如果此時Num Lock處於打開狀態)。
3:vi窗口可進行的操作包括,上下左右翻動,按冒號(:)開始進行設置,比如設置上面窗口全屏顯示(即下面的gdb窗口被隱藏),按斜幹(/)爲在當前文件內搜索,按o鍵可以顯示當前程序關聯的文件列表。設置斷點按 "空格" 鍵, 取消斷點按 "空格" 鍵。
4:通過在代碼窗口中鍵入o來打開文件對話框窗口。當您打開了文件對話框窗口後,需要通過鍵入q 來關閉它。您可以通過方向鍵來選擇您想要的文件,按回車鍵選中文件,甚至可以使用正則表達式去搜索文件。
打開gdb
在命令行下輸入 'cgdb' 運行CGDB在GDB窗口輸入 'quit' 或者按下 'Ctrl+D' 退出CGDB在源代碼窗口輸入 ':quit' 也可以退出CGDB。這在GDB掛起或者運行一條耗時很長的指令時也同樣起作用
cgdb窗口
k
up arrow
向上移動一行
j
down arrow
向下移動一行
h
left arrow
向左移動一列
l
right arrow
向右移動一列
Ctrl-b
page up
向上翻一頁
Ctrl-u
向上翻半頁
Ctrl-f
page down
向下翻一頁
Ctrl-d
向下翻半頁
gg
移動到文件頂部
G
移動到文件底部
/
從當前光標處向下搜索
?
從當前光標處向上搜索
n
繼續向下搜索
N
繼續向上搜索
o
打開文件對話框窗口
spacebar
在當前行設置斷點
t
在當前行設置一個臨時斷點
-
將代碼窗口縮小一行
=
將代碼窗口增大一行
_
將代碼窗口縮小25%(當TTY窗口顯示的時候,將TTY窗口縮小一行)
+
將代碼窗口增大25%(當TTY窗口顯示的時候,將TTY窗口增大一行)
Ctrl-l
清屏並重繪
F5
發送一個run命令至GDB
F6
發送一個continue命令至GDB
F7
發送一個finish命令至GDB
F8
發送一個next命令至GDB
F10
發送一個step命令至GDB
代碼窗口
q
將會退出文件對話框並返回代碼窗口
k
up arrow
向上移動一行
j
down arrow
向下移動一行
h
left arrow
向左移動一行
l
right arrow
向右移動一行
Ctrl-b
page up
向上翻一頁
Ctrl-f page down
向下翻一頁
/
從當前光標處向下搜索
?
從當前光標處向上搜索
n
繼續向下搜索
N
繼續向上搜索
enter
選擇當前的文件
GDB窗口
I
讓用戶進入TTY模式
T
打開一個窗口並將輸入傳遞給被調試的程序
Ctrl+T
爲被調試程序打開一個新的tty
-
將代碼窗口縮小一行
=
將代碼窗口增大一行
_
將代碼窗口縮小25%(當TTY窗口顯示的時候,將TTY窗口縮小一行)
+
將代碼窗口增大25%(當TTY窗口顯示的時候,將TTY窗口增大一行)
k
up arrow
向上移動一行
j
down arrow
向下移動一行
h
left arrow
向左移動一列
l
right arrow
向右移動一列
Ctrl-b
page up
向上翻一頁
Ctrl-u
向上翻半頁
Ctrl-f
page down
向下翻一頁
Ctrl-d
向下翻半頁
gg
移動到文件頂部
G
移動到文件底部
/
從當前光標處向下搜索
?
從當前光標處向上搜索
n
繼續向下搜索
N
繼續向上搜索
o
打開文件對話框窗口
spacebar
在當前行設置斷點
t
在當前行設置一個臨時斷點
Ctrl-l
清屏並重繪
F5
發送一個run命令至GDB
F6
發送一個continue命令至GDB
F7
發送一個finish命令至GDB
F8
發送一個next命令至GDB
F10
發送一個step命令至GDB
附加進程
#cgdb -p pid