Debugging 如何将GDB输出设置为stderr? 我试图用 GDB批处理调试程序,在一个过滤器管道的中间。问题是,gdb输出到stdout,stdout被混合到程序输出中,并且没有被记录

Debugging 如何将GDB输出设置为stderr? 我试图用 GDB批处理调试程序,在一个过滤器管道的中间。问题是,gdb输出到stdout,stdout被混合到程序输出中,并且没有被记录,debugging,gdb,Debugging,Gdb,如何将GDB的输出更改为stderr,使其最终出现在日志中 如何将GDB的输出更改为stderr,使其最终出现在日志中 我不知道如何在不修改源代码的情况下更改GDB的输出,但您可以使用一对命令将GDB的输出复制到stderr或任何其他日志文件: (gdb) set logging file /dev/stderr (gdb) set logging on Copying output to /dev/stderr. 与-批处理选项一起,这可以在一行中完成: gdb -ex "set log

如何将GDB的输出更改为stderr,使其最终出现在日志中

如何将GDB的输出更改为stderr,使其最终出现在日志中

我不知道如何在不修改源代码的情况下更改GDB的输出,但您可以使用一对命令将GDB的输出复制到stderr或任何其他日志文件:

(gdb) set logging file /dev/stderr 
(gdb) set logging on 
Copying output to /dev/stderr.
-批处理
选项一起,这可以在一行中完成:

gdb -ex "set logging file /dev/stderr" -ex "set logging on" -batch

单独运行gdb并将其连接到程序(使用
attach
或通过gdbserver)是否可以接受?