如何在gdb脚本中确认操作(回答“Y”)?

时间:2012-07-06 05:08:03

标签: debugging gdb breakpoints

我使用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? 提前谢谢。

1 个答案:

答案 0 :(得分:40)

(gdb) set breakpoint pending on

这将使gdb跳过要求确认,引自the docs

  

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