emacs gdb 调试

写下linux下用emacs调用dgb调试的方法

emacs中使用gdb

说明C等价于ctrl          M等价于alt



1,编写 .c函数 test.c



2,gcc一把    看看对不对   带上-g


gcc   -g    -o      test .debug    test.c


如果要用gdb调试器,必须使用g选项。

3,#emacs    //打开emacs(也可以先打开源码进行对照)

     (打开源码 #emacs test.c 然后水平切开窗口 C--x 3)

      M + x   gdb 回车                     //打开gdb

      在gdb中输入file   test.debug //打开文件进行调试

4,list           //列出源码   l 5 则光标显示在第五行

5,b line     //在line行设个断点 delete +点号 可以删除断点 info b 可以查看断点信息

6,run        //执行 到断点处会停下来   p+变量 可以查看变量

7   step      //单步      continue //继续

8   quit      //退出


相关gdb指令

backtrace(或bt)查看各级函数调用及参数

finish 执行到当前函数返回,然后停下来等待命令

frame(或f) 帧编号选择栈帧 info(或i)

locals 查看当前栈帧局部变量的值

list(或l)列出源代码,接着上次的位置往下列,每次列10行

list 行号列出从第几行开始的源代码 list 函数名列出某个函数的源代码

next(或n)执行下一行语句

print(或p)打印表达式的值,通过表达式可以修改变量的值或者调用函数

set var 修改变量的值

start 开始执行程序,停在main函数第一行语句前面等待命令

run(或r)从头开始连续而非单步执行程序

step(或s)执行下一行语句,如果有函数调用则进入到函数

continue(或c)从当前位置开始连续执行程序直到遇到断点

break(或b) 行号在某一行设置断点

break 函数名在某个函数开头设置断点

break...if... 设置条件断点

delete breakpoints 删除断点

display 变量名跟踪查看一个变量,每次停下来都显示它的值

disable breakpoints 禁用断点

enable breakpoints 启用断点 info(或i)

breakpoints 查看当前设置了哪些断点

undisplay 取消对先前设置的那些变量的跟踪

jump
在断点之间跳转

posted @ 2011-08-21 17:24  一万零一时  阅读(1296)  评论(0编辑  收藏  举报