问题标签 [gud]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
246 浏览

emacs - Emacs/gud-gdb:在失败时显示断言位置

当我的代码中的断言失败时,我会从 gdb 中得到这样的回溯:

所以为了达到实际的故障点,我必须去' up <RET> <RET> <RET>',这似乎有点低效。有没有办法将 gdb 配置为自动转到堆栈中的#3?我对在 emacs 中运行 gdb 特别感兴趣,所以如果有办法配置 gud 来做到这一点,那也可以。

0 投票
1 回答
151 浏览

visual-studio - Mac 上的原生 (C/C++) 应用程序有什么好的调试器?

我是从 Windows 切换到 Mac 的本地开发人员。我有很多使用 Windbg(Emacs 上的 CDB-GUD)和 Visual Studio 进行调试的经验,我想知道 Mac 上的哪个调试器会给我最接近的体验?我专门寻找以下功能:

  • 调试任意可执行文件的能力(VS 允许我通过将调试目标设置为任何可执行文件来做到这一点)。
  • 可自定义的键盘快捷键。至少 f5、f9、f10、f11、Shift f11。我不太关心其他的。

我不使用 VS 进行任何类型的编辑,所以这对我来说并不重要。

到目前为止,最舒适的设置是运行 Emacs GUD——我也在 Windows 上使用 CDB-GUD 执行此操作,但想知道那里是否有更好的东西。

更新:我知道 GDB 是大多数人使用的调试器。我想我最初的问题措辞不佳。我真的想问什么调试器 GUI 会给我一个非常类似于 Visual Studio 的环境。

0 投票
3 回答
3426 浏览

emacs - 通过 emacs 运行时设置 gdb 的环境

我有一个程序,我想通过 emacs 使用 gdb 进行调试。为了运行这个程序的开发版本,我有一个 shell 脚本,我可以获取它来设置调用环境以查看正确的库等。我无法解决的是如何让 emacs/gud 获取这个执行 gdb 之前的文件。

我试过使用像“source env.sourceme && gdb my_program”这样的命令,但emacs抱怨它不知道“source”是什么意思。我猜它并没有真正在 shell 中运行 gdb,所以这些技巧是行不通的。

那么,如何说服 gud/emacs/whatever 在我的自定义环境中运行 gdb?我有一个 hacky 解决方案,但我觉得我一定错过了一些东西。

0 投票
1 回答
248 浏览

emacs - 它是 Emacs gdb-many-windows-mode 中标题上的按钮还是选项卡?

某些窗口在 gdb-many-windows-mode 的标题上具有可点击的按钮或选项卡,例如“Locals/Registers”或“Breakpoints/Threads”。它们是标签吗?我可以在它们旁边添加新的吗? 看到这个

0 投票
1 回答
388 浏览

emacs - emacs gdb tab-completes 目录用空格而不是 /

当我在 emacs (with) 中运行 gdbM-x gdb并尝试使用制表符完成目录名称时,它以空格而不是斜杠完成。因此,例如:

(gdb) run/mn

制表符完成到

(gdb) run /mnt 

什么时候应该制表符完成

(gdb) run /mnt/

如果我在 emacs 之外运行 gdb,tab-completion 会按预期工作。

我在 debian 测试中运行 gdb 7.4.1-debian 和 emacs 23.4.1。

您可以在这里给我的任何帮助将不胜感激;这真的很烦人!

0 投票
1 回答
705 浏览

emacs - emacs取消最后一个动作,ctrl+g不是很有效

Emacs 通常使用Ctrl+G取消操作,但是当我使用 GUD 模式调试程序时,Ctrl+G通常不会像我预期的那样工作。例如,如果我想在源 test.cpp 的第 223 行设置一个断点,如果我输入 "b test.c:" ,那么我使用 TAB 自动完成它然后将尝试列出所有可能的结果,则 emacs 无法响应任何输入。如果我使用Ctrl+G取消此操作,结果会继续将所有结果输出到屏幕,这可能需要很长时间。有没有办法更有效地取消这个动作?

0 投票
3 回答
4510 浏览

emacs - 如何在 gud 中关闭 *input/output* 缓冲区

我最近从 23 切换到使用 GNU Emacs 24,我注意到每当我输入 gud 时,*输入/输出*缓冲区都是打开的。每次调试时,我都会使用 Cx 0 手动关闭它。谁能指出我需要配置的正确变量才能默认停止显示此缓冲区?

0 投票
0 回答
142 浏览

object - emacs/gdb:显示共享对象的来源

我在使用 emacs 和 gdb 调试 C++ 时遇到问题。我可以在共享对象中定义的函数中设置断点,只需通过手动添加它们

但是,如果我在 emacs 窗口中打开 file_in_so.cpp,我将无法通过鼠标设置断点。Emacs 根本不知道这个源文件属于源文件列表。如果 gdb 已经运行并在另一个断点处等待,也会发生这种情况。是否有命令告诉 emacs 重新加载所有源的当前列表,即使是在共享对象中定义的那些?

0 投票
1 回答
669 浏览

emacs - emacs 24 gud-mi gdb 问题

我在使用 Emacs v24 的 gud-mi 接口和 gdb 时遇到了一些琐碎的问题。我希望这里有人可以帮助我,谷歌并没有太多帮助(可能是因为非常笼统的术语)

因此,我在 Emacs 中使用 gdb: gdb -i=mi --annotate=0

问题:

1)我看到的一个问题是gdb提示并不总是显示(你被困在一个新行没有提示不知道它是否正在处理某些东西,或者等待你的输入)。我最初有--annotate=3,问题更严重,--annotate=0,提示看起来好多了,但仍然有几次提示丢失。

是否有任何设置可以确保提示不会丢失?

2)另一个“问题”是我希望 gud-gdb 在我重新启动可执行文件时询问我确认,例如在运行上一个命令时错误地按 <r><enter> 或只是按 <enter> (对于某些类似的退出、附加等大动作)。是否有设置来获得这种行为?

平台:RHEL5.0

感谢您的时间和评论!

0 投票
1 回答
249 浏览

visual-studio - 相当于 GUD 中 Visual Studio 的监视窗口

我正在使用 Emacs 23 进行一些 C 开发,使用 GUD(使用 GDB)作为我的调试器。

我在网上看过,但还没有在 GUD 中找到与 Visual Studio 的 Watch Window 等效的东西。本质上,此窗口允许您插入一个表达式列表,每次执行程序时都会对这些表达式进行评估,并向您显示它们的值。GUD中是否有与此类似的功能?

我已经看到 GDB 有一个称为观察点的功能,但这不是我想要的。