29

我使用 gdb 来调试我的 cpp 代码。我以这种方式设置断点:

(gdb) break ParseDriver.cc:60
No source file named ParseDriver.cc.
Make breakpoint pending on future shared library load? (y or [n]) y
Breakpoint 1 (ParseDriver.cc:60) pending.

为了简化设置断点,我编写了一个简单的 gdb 脚本(名为 breakpoints.gdb),它只包含一行:

break ParseDriver.cc:60

我在 gdb 终端中获取此脚本,但它失败了。

(gdb) source ~/breakpoints.gdb
No source file named ParseDriver.cc.
Make breakpoint pending on future shared library load? (y or [n]) [answered N; input not from terminal]

看来我们需要在脚本中回答 Y 才能设置断点。

那么,如何在 gdb 脚本中回答 Y 呢?先感谢您。

4

1 回答 1

54
(gdb) set breakpoint pending on

这将使 gdb 跳过要求确认,引用文档

这表明无法识别的断点位置应自动导致创建挂起的断点。

于 2012-07-06T05:33:32.493 回答