免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: kytexzy
打印 上一主题 下一主题

请问我这个C++程序怎么不能用gdb罗列代码? [复制链接]

论坛徽章:
0
11 [报告]
发表于 2009-09-09 20:35 |只看该作者

回复 #9 kytexzy 的帖子

你要浏览什么地方就直接浏览好了,例如退回高一点的你的代码所在的frame,或者直接列出某个文件的某一行,
设断点也一样,直接设在函数名上,或者某个文件某一行上好了。

论坛徽章:
0
12 [报告]
发表于 2009-09-09 20:40 |只看该作者

回复 #10 kytexzy 的帖子

不要认为print低级,一般调试到后面,很少会单步跟踪的,都是靠日志的。

打日志最好定好原则,什么情况下打什么日志约定好,简洁一些,同时多输出一些原始数据供参考。

一般简单的bug,通过单元测试,把所有路径都覆盖一下,基本都能解决。
复杂的bug,有时候几天才出现一次,这时候单步跟踪很累的。通常预先在关键点打日志,
根据输出的原始数据,想象模拟还原系统当时的情况,分析可能出问题的地方,必要时再增加日志。

论坛徽章:
0
13 [报告]
发表于 2009-09-17 22:26 |只看该作者
gdb可以调试boost的多线程程序,但是asio就是不能用list来罗列代码,不能用list就不好设断点,这是最要命的东西!

论坛徽章:
0
14 [报告]
发表于 2009-09-18 09:42 |只看该作者
终于找到问题,原来是我的CMake配置文件书写得有点问题,用ccmake重新配置后就好啦!


您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP