如何从dbx获得尽可能多的东西

时间:2008-10-20 21:37:17

标签: c++ debugging solaris dbx

我每天都在为Solaris10上的C ++开发做TDD。它大大减少了我花在使用调试器上的时间,但有时这是唯一的选择。

DBX非常强大但不是那么用户友好。请注意,我所说的是控制台DBX而不是用于DBX的SunStudio GUI。

您可以为dbx C ++调试提供哪些最佳生产力提示?

PS。更改调试器不是一种选择。

3 个答案:

答案 0 :(得分:8)

我已经为几个与dbx相关的网站添加了书签。在这里,他们没有特别的顺序,以防他们对你有用:

2012年7月19日编辑:自从Chris Quenelle的博客发生变化以来,我试图修复几个链接。由于支卫机器,仍然可以访问一些文章。

答案 1 :(得分:1)

我也 在工作中使用dbx并理解你的挫败感!

我发现的一些技巧让我的生活更轻松:

使用这样的内置命令系统: 什么时候停止{print ; }
超出范围时,显然不起作用,但我发现它足够有用。我还没有对'追踪'设施,YMMV感到高兴。

创建自己的.dbxrc文件可以让生活更轻松,“pathmap”功能也是如此。

最后,只有你已经知道这一点,这才是显而易见的,但请尝试Sun's manual

写得不是特别好,但仍然是必读的。

答案 2 :(得分:1)

dbx的一个强大功能是内置ksh。您可以编写复杂的shell函数,以打印数据结构的自定义视图,或者按照特定路径中的指针进行操作。 shell是pdksh的旧版本,所以它不是最好的编程,但它比没有使用任何内置语言要好得多。命令行还提供了大量帮助。搜索帮助的一个技巧是在dbx命令shell中使用“vi $ helpfile”。在一个大文件中编写原始帮助文件数据。您可以在dbx随附的dbxrc文件中看到一些shell函数示例,默认情况下会加载这些示例。您可以通过查看libumem集成模块来查看更复杂的示例。你可以在这里找到它:

http://blogs.oracle.com/quenelle/entry/using_dbx_and_libumem_to