GDB是否有内置的脚本机制,我应该编写一个期望脚本,还是有更好的解决方案?
我每次都会发送相同的命令序列,我会将每个命令的输出保存到文件中(最有可能使用GDB的内置日志记录机制,除非有人有更好的想法).
我想在gdb脚本中预定义一些断点,并在这些断点处调用一些特殊命令,然后自动继续执行程序.所以,理想情况下,我想要一个像下面这样的gdb脚本:
b someFunction
...
if breakpoint from above reached do:
print var1
call someOtherFunction
continue
done
Run Code Online (Sandbox Code Playgroud)
另外一个不幸的事实是,我不能依赖python接口来使用断点,因为我目前工作的服务器上的gdb版本太旧了!
我想让我使用GDB命令行程序的一个小GUI版本,Linux以便C更轻松地调试小程序.可能已经存在一些特别是在IDE中,但我想让它变得有趣并且更好地了解它GDB.
现在我想知道GDB是否有一个API,所以我可以直接从代码访问GDB命令,而且我不必绕过终端,例如popen.
如果没有这样的API GDB,最简单的方法是启动GDB隐藏并向其发送命令,从中检索输出?