gdb - 如何在GDB中自动运行可执行文件?

标签 gdb

我想让 gdb 立即运行可执行文件,就像我输入“run”一样 (动机:我不喜欢输入“run”)。

一种方法是将命令通过管道传输到 gdb,如下所示:

$ echo run | gdb myApp

但这种方法的问题是你会失去与 gdb 的交互性, 例如。如果断点触发或myApp崩溃,gdb退出。 此方法讨论here .

查看--help中的选项,我没有找到执行此操作的方法,但也许我遗漏了一些东西。

最佳答案

gdb -ex run ./a.out

如果您需要将参数传递给a.out:

gdb -ex run --args ./a.out arg1 arg2 ...

编辑: Orion说这在 Mac OSX 上不起作用。

-ex 标志自 GDB-6.4(2005 年发布)以来就可用,但 OSX 使用 Apple 的 GDB 分支,并且 Leopard 的最新 XCode 包含GDB 6.3.50-20050815(Apple 版本 gdb-967),所以你运气不好。

构建当前的 GDB-7.0.1 版本是一种可能的解决方案。请务必阅读this .

关于gdb - 如何在GDB中自动运行可执行文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2119564/

相关文章:

c - 当 GDB 崩溃/出现段错误时如何编辑正在运行的程序

c - 检查 gdb 中的命令?

c++ - GDB设置断点时未定义函数 "d::~d"

gdb - 如何确定 gdb 中的函数属于哪个共享库?

c++ - 如何在 Qt Creator 中使用调试器

linux - 交叉编译 gdbserver 时出错

gdb - openocd freertos awareness 无法启动gdb

c - GDB进入动态链接器(ld.so)代码

objective-c - gdb 控制台的命令是什么?

c - c语言创建静态变量时