【问题标题】:Can I set a breakpoint with gdb as I'm calling it?我可以在调用 gdb 时设置断点吗?
【发布时间】:2018-03-07 13:54:09
【问题描述】:

我正在进行一个大型调试项目,每次开始运行gdb 时,我都必须输入b 253

如果我可以设置我的运行脚本以便gdb 加载已设置的断点,那就太好了。

更明确地说:这是run.csh的内容:

gdb --args path/to/program arg1 arg2

我可以修改它,这样,一旦我运行它,我可以输入r 并且程序在第 253 行中断?

【问题讨论】:

  • run.csh?您正在用 csh 编写脚本吗? :-[

标签: gdb


【解决方案1】:

是的。 阅读documentation of gdb

您可以extend GDB。你可以有Canned Sequences of Commands

您可以在PythonGuile 中定义或使用扩展。另见this

(您可能需要从源代码重新编译 GDB 本身,因为遗憾的是,并非所有常见的 gdb 都配置了 Guile 支持)

您可以拥有您的.gdbinit 文件(阅读有关startup filescommand files 的信息)。顺便说一句,您可能更喜欢在函数名称中使用break,而不是那里的行号。阅读有关specifying locations 的更多信息。

实际上,许多大型项目的源代码库中都有一些.gdbinit(可能已生成)。

请务必使用最新版本的 GDB。最新的(2018年3月)是GDB 8.1

【讨论】:

  • -x-ex 看起来特别相关。
猜你喜欢
  • 2010-09-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-05-17
  • 1970-01-01
  • 2010-10-19
  • 2012-08-18
相关资源
最近更新 更多