问题不在于在 Emacs 中调试 C、PHP、Python 等,而是调试 emacs 本身。当我尝试在 Emacs 中使用Mx gdb 输入
现在我已经用调试信息构建了emacs,并使用"gdb emacs"命令加载了它。
l 命令显示 emacs 的源代码,现在我的问题是如何调试 Emacs?我应该在哪里设置该断点?如何使用GDB找到分段故障的根源?
以下是关于我现在所做的事情的屏幕截图,那么有什么建议我应该如何调试 Emacs 吗? 以及在哪里设置断点?
http://i1271.photobucket.com/albums/jj624/bigmeowOoO/emacs_where-i-should-set-breakpoint-when-debug-emacs.jpg
如何使用GDB找到分段故障的根源?
不要设置任何断点(尚)。只需使用run
命令即可。这将开始运行emacs
(在 GDB 控制下)。
在那个emacs
,做M-x gdb
。 emacs
会崩溃(如果你幸运的话),你会在崩溃点得到(gdb)
提示。
从那里,使用gdb
检查崩溃点的emacs
状态。找出哪些变量具有错误的值等。然后找出这些变量的设置位置,在那里设置断点,然后重复(就像调试任何其他程序一样 - emacs
成为你的错误程序没有什么特别的)。
附言请不要发布简单的文本剪切/粘贴将传达完全相同信息的图片。