我总是需要输入:
handle SIGPIPE nostop noprint pass
有没有办法让它永久化或配置 gdb 让它在它的设置中?
创建一个文件 ~/.gdbinit 包含:
handle SIGPIPE nostop noprint pass
该文件的内容只是标准的 gdb 命令,每次启动 gdb 时都会执行。
也可以有项目特定的 .gdbinit 文件。想象一下您的项目目录是:/home/user/my-project/
这是您在调试项目时启动 gdb 的地方。首先将此行添加到您的 ~/.gdbinit:
add-auto-load-safe-path /home/user/my-project/.gdbinit
然后创建一个文件/home/user/my-project/.gdbinit
,将特定于该项目的任何 gdb 命令放入这个新.gdbinit
文件中,每次在项目目录中启动 gdb 时都会执行这些命令。
GDB 将在每次启动时运行 ~/.gdbrc 文件中的所有命令,因此您可以将句柄命令放在它们中,以便在每次启动 gdb 时自动执行它。