Debugging 与gdb有效合作

Debugging 与gdb有效合作,debugging,gdb,Debugging,Gdb,只要可能,我通常倾向于学习键盘快捷键。看到一个有经验的程序员有效地使用VI,真是太神奇了。 我一直在尝试改用gdb调试,而不是eclipse调试器(基于gdb) 我仍然发现很难真正浏览代码,检查变量等等。 事实上,我从未见过有经验的gdb用户,所以我想知道。。。值得吗?是否有可能与gdb有效合作 注意:我还尝试了cgdb,它是gdb的一个curses扩展。它更好了,但我仍然觉得它还不够有效…GDB有一个curses界面,可以通过命令行选项-tui激活它。 此接口具有单键模式,通过一次按键即可实现

只要可能,我通常倾向于学习键盘快捷键。看到一个有经验的程序员有效地使用VI,真是太神奇了。 我一直在尝试改用gdb调试,而不是eclipse调试器(基于gdb) 我仍然发现很难真正浏览代码,检查变量等等。 事实上,我从未见过有经验的gdb用户,所以我想知道。。。值得吗?是否有可能与gdb有效合作


注意:我还尝试了cgdb,它是gdb的一个curses扩展。它更好了,但我仍然觉得它还不够有效…

GDB有一个curses界面,可以通过命令行选项-tui激活它。 此接口具有单键模式,通过一次按键即可实现最常见的操作。此外,如果您使用自动命令执行,例如,在到达断点时显示变量值,那么这将非常舒适和快速。但是如果您仍然使用Eclipse,我认为没有必要避免使用用于gdb的Eclipse UI


我在emacs内部使用GDB有一段时间了,但是发现在GDB和emacs之间传输信息的时间是不可接受的,所以我切换到上面提到的这个TUI模式。我不知道GDB和Eclipse之间的信息传输是否更快,但至少在GDB中直接启动复杂程序的时间可能比在Eclipse中好得多。

您也可以尝试ddd调试程序:


尽管有人悬赏,但这个问题没有引起太多关注。 所以我决定为自己进一步调查这个问题。 最后我偶然发现了一个我认为非常有效的解决办法

它被称为
tmux
,基本上类似于
gnu屏幕
。 此工具允许将控制台拆分为多个窗格,每个窗格包含不同的进程。 因此,可以有一个带有
gdb
emacs
的窗口。
使用专用热键在窗口之间切换非常容易。

我认为eclipse可能接近gdb的有效使用。你是认真的吗,最近看过ddd吗?