我有一个偶尔会出现段错误的C ++程序。 answer到this SO question提供了一种让GDB反复运行我的程序直到它捕获段错误的方法。
然而,通过GDB导航我的程序一直很痛苦,我想使用Eclipse调试器来做这件事。我已经成功创建了一个运行我的程序的调试配置。
有没有办法让Eclipse继续运行此调试配置,直到出现段错(或其他错误)?
我想我可以通过在调试配置中提供一个GDB命令文件来实现,该文件将在程序的出口处设置一个断点,然后命令GDB重新运行该程序。
尝试了GDB命令文件:
break exit
run
end
但是当我尝试启动调试会话时,使用此GDB命令文件会导致以下错误:
Error in final launch sequence Failed to execute MI command: source /home/matt/gdb-loop Error message from debugger back end: /home/matt/gdb-loop:2: Error in sourced command file:\nNo executable file specified.\nUse the "file" or "exec-file" command. /home/matt/gdb-loop:2: Error in sourced command file:\nNo executable file specified.\nUse the "file" or "exec-file" command.
因此,当我修改正在使用的GDB命令文件时,似乎我正在调试的程序的命令被覆盖。
仅供参考:在Ubuntu 14.04上运行Eclipse Neon(4.6.0 build 20160613-1800)。