为什么我的GDB批处理模式退出状态总是0?

为什么我的GDB批处理模式退出状态总是0?,gdb,Gdb,他们说: -批处理 以批处理模式运行。在处理用“-x指定的所有命令文件后,以状态0退出。。。如果在命令文件中执行gdb命令时出错,则以非零状态退出 但即使有错误,我的退出状态也为零。例如: $ cat gdbscript foo $ gdb -batch -x gdbscript gdbscript:1: Error in sourced command file: Undefined command: "foo". Try "help". $ echo $? 0 例如,如果在脚本中使用

他们说:

-批处理

以批处理模式运行。在处理用“
-x
指定的所有命令文件后,以状态
0
退出。。。如果在命令文件中执行gdb命令时出错,则以非零状态退出

但即使有错误,我的退出状态也为零。例如:

$ cat gdbscript 
foo
$ gdb -batch -x gdbscript 
gdbscript:1: Error in sourced command file:
Undefined command: "foo".  Try "help".
$ echo $?
0
例如,如果在脚本中使用
quit 1
,则GDB程序状态正确

为什么这会发生在我身上?有办法绕过它吗?我正在尝试刷新远程目标,如果失败,我真的希望GDB以错误状态退出

我的GDB版本,如果它碰巧很重要:

GNU gdb(用于ARM嵌入式处理器的GNU工具)7.8.0.20150604-cvs

为什么这会发生在我身上?有办法绕过它吗


它被称为gdb。您可以从Bug 13000申请并重建gdb,这可能对您有用。

这是gdb Bug。看,那太令人失望了。我正要测试我自己的补丁程序,但也许我会从那里选择推荐的补丁程序。@ks1322-请随意回答,我会在网上拥抱你。