使用GDB的tui选项

时间:2009-11-29 06:39:53

标签: c++ gdb

我目前正在使用NS-2(网络模拟器),我想使用gdb的tui选项,以便我可以在调试时查看课程代码。 (就像Visual studio一样)

截至目前,当我运行“gdb -tui”时,源窗口为空白。但是当我在gdb中执行“list”时,我可以看到该文件,但是我无法自动将其转到文件并指向中断位置。

任何想法如何做到这一点?

4 个答案:

答案 0 :(得分:8)

您是否尝试过Ctrl-X A组合? 它告诉gdb进入/离开TUI模式。

答案 1 :(得分:4)

使用gdb运行您的可执行文件:

$gdb -tui ./executable_name

在gdb终端上执行gdb命令:“run”后,将立即显示源代码。

如果你在某一行上设置一个断点(例如:在main()函数上),然后执行“run”会更好:源代码现在可见了。

答案 2 :(得分:1)

虽然我不确定GDB TUI,但如果您熟悉vi,请务必查看CGDB。它是使用类似vi的键绑定的GDB的TUI前端。

要在CGDB中设置断点,只需点击“转义”(当然),导航到要中断的行,然后点击空格键!

答案 3 :(得分:1)

您可以随时仔细检查,以便elf文件包含正确的数据。

假设您在某个地方打破了您的程序,那么您将在PC上获得一些阅读(程序计数器)。可以使用addr2line(在binutils中)交叉检查该值,因此您确实拥有正确的源文件。