gdb执行和调试窗口分离

来源:互联网 发布:淘宝手机怎么删除评价 编辑:程序博客网 时间:2024/05/21 09:05

将执行程序和调试窗口分开,目前我在工作中用到的应用场景:在发往测试部的程序包,如果测出bug,而在开发环境暂时没有复现环境的时候(在测试部能复现),会打开一个调试窗口,找到执行程序的进程号,将运行的程序attach到gdb里面(方法二),然后进行简单的调试,寻找bug的原因。

《the art of debugging with gdb ddd and eclipse》书里讲解情景:是在调试gui窗口程序的时候。

1.      方法一:使用tty

1)      打开一个执行窗口,一个调试窗口

2)      找到执行窗口的终端设备


3)      在执行窗口运行sleep指令,让shell休眠


4)      在调试窗口,打开gdb(注:gdb + 可执行程序)


5)      在调试窗口,将程序的输入和输出导向执行窗口(tty + 执行窗口的终端设备)


6)      调试窗口,打断点并运行


7)      运行窗口会展示运行结果


8)      运行窗口输入信息(在这儿的示例程序,是按u键),会在调试窗口进入断点





2.      方法二:attach

1)      直接在运行窗口运行程序


2)      在调试窗口,找到运行程序的进程号


3)      在调试窗口,运行gdb(仅执行gdb)


4)      在调试窗口,将运行的进程attach到gdb里面


5)      在调试窗口,打断点,执行continue命令


6)      在运行窗口输入信息,调试窗口会进入断点





3. 示例代码(出自《the art of debugging with gdb ddd and eclipse》)

http://download.csdn.net/detail/qq123386926/9297121

0 0
原创粉丝点击