GDB调试Go程序进阶

Rhino(犀牛) · · 4161 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

目的:使用gdb附加到一个正在运行的进程上,然后做一些调试,并安全退出。

1. 修改Ubuntu配置,允许gdb附加到进程上,如何修改如下:
http://askubuntu.com/questions/41629/after-upgrade-gdb-wont-attach-to-process

2. 查看进程id #ps ax 或者 #ps au

3. 启动gdb

4. 使用file命令来指定进程所联系的程序源代码和符号表,例如:

file /home/yourihua/workplace/rhino/bin/console

5. attach <进程ID>

6. 打断点,如下:

b /home/yourihua/workplace/rhino/src/github.com/yourihua/console/app/controllers/app.go:10

7. 输入c,进程继续运行。

8. ctrl + c再次中断,回到gdb命令行,然后输入:detach。
当你调试结束之后,可以使用该命令断开进程与gdb的连接(结束gdb对进程的控制),在这个命令执行之后,你所调试的那个进程将继续运行。

参考文章:
http://www.cnblogs.com/whiteyun/archive/2011/10/17/2215532.html

最后还是离不开gdb大牛,yuhen的耐心帮助。


有疑问加站长微信联系(非本文作者)

本文来自:Rhino 的博客

感谢作者:Rhino(犀牛)

查看原文:GDB调试Go程序进阶

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

4161 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传