我在调试emacs时应该设置断点?

时间:2012-08-12 15:24:03

标签: debugging emacs gdb segmentation-fault

问题不是在emacs中调试c,php,python等,而是调试emacs本身。 当我尝试在emacs中使用输入gdb模式时,我遇到了分段错误错误 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

1 个答案:

答案 0 :(得分:2)

  

如何使用gdb找到分段错误的起源?

不要设置任何断点(尚未)。只需使用run命令即可​​。这将开始emacs运行(在GDB控制下)。

emacs中,执行M-x gdbemacs会崩溃(如果你很幸运的话),你会在崩溃点得到(gdb)提示。

从那里,使用gdb检查崩溃点的emacs状态。弄清楚哪些变量有错误的值等等。然后找出这些变量的设置位置,在那里设置断点,然后重复(就像调试任何其他程序一样 - emacs没有什么特别之处是你的错误计划。)

P.S。请勿发布简单文字剪切/粘贴将完全 相同信息的图片。