一禁灼、安裝
sudo apt install emacs
二某抓、配置
2.1 配置界面
下載? .emacs 文件置于用戶home目錄下
https://github.com/zhuweipu/environment
功能說明
最上面設(shè)定了 ALT + 方向鍵就可以在窗口中跳轉(zhuǎn)单山,終端 alt+方向可以改成 C-left, C-right 等用 ctrl + 方向鍵移動窗口俩块。
后面設(shè)定了一些常用命令的快捷束世,最后設(shè)置了默認打開 gdb-many-windows谤民。
上面代碼為允許鼠標操作。
上面代碼為更改布局膜毁。
2.2 快速啟動
在.bashrc文件中填入以下語句
gdbtool(){emacs --eval"(gdb \"gdb --annotate=3 -i=mi $*\")";}
終端下我們對要調(diào)試的程序只需要輸入
$ gdbtool 程序名
就能自動打開 emacs 并且切換到 gdb-mode 昭卓,展開多窗口開始調(diào)試。
三瘟滨、使用說明
3.1 布局說明
從上到下分別是:GDB終端候醒,本地變量監(jiān)控,源代碼杂瘸,程序輸出倒淫,棧幀,斷點列表败玉。
右上角的本地變量窗口上面有兩個按鈕敌土,可以鼠標點擊切換顯示本地變量還是寄存器。
右下角的也有兩個按鈕切換顯示斷點還是線程运翼。最上面綠色部分的按鈕也可以直接鼠標點擊返干。
3.2 emacs基本命令
c-代表ctrl+,m-代表alt+血淌。
切換文件:c-x c-f (先按 ctrl_x 再按 ctrl_f)矩欠,輸入文件名時可以用 tab 補全
移動光標:方向鍵财剖,或者 c-f, c-b, c-p, c-n;
切換緩存:c-x b 切換當前窗口里的緩存癌淮,c-x c-b 打開新窗口切換緩存躺坟。
窗口操作:c-x o 窗口切換,c-x 2 / c-x 3 上下/左右分屏乳蓄,c-x 0 / c-x 1 關(guān)閉 / 獨占
輸入命令:m-x (按 ALT_x)輸入命令可以用 tab 補全咪橙,c-g 退出命令輸入。
退出命令:c-x c-c
3.3 gdb窗口
一般來說在emacs中輸入 m-x gdb可以跳轉(zhuǎn)至gdb虚倒,然后m-x?gdb-many-windows可以打開多窗口美侦,腳本已經(jīng)完成上述工作。
只需用鼠標在不同窗口之間focus就好裹刮,在gdb終端正常使用gdb命令音榜,按下回車時所在行的所有字符都會被當成命令,所以最好在空白行處開始打命令捧弃。
快捷鍵
F5 - 運行赠叼,Shift + F5 - 繼續(xù)
F7/F8 代碼級單步, 以及 Shift-F7/F8 指令級單步
F9 - 設(shè)置斷點违霞,Shift-F9 刪除斷點? ? 取決于當前的源碼窗口箭頭在哪一行
F10 - 跳出循環(huán)嘴办,Shift-F10 跳出函數(shù)
F4 - 移動到上一個調(diào)用棧幀,Shift-F4移動到下一個
3.4 源碼窗口
大部分時候我們會在源代碼窗口工作买鸽,使用 c-x o (直接鼠標點也行)將窗口定位到源代碼窗口涧郊。
m-x輸入命令或者對應(yīng)快捷鍵(組合不是任意一個的意思)進行操作,gud- 開頭的 gdb 命令一一對應(yīng)眼五。