我想编写一个 ruby 程序,它可以通过启动gdb
然后print
那个值来检查程序的变量值。我怎么能做到这一点?
如果我在 shell 中,我会这样做:
shell > gdb test
[...gbd started]
(gdb) p variable
$1 = 20
(gdb)
我也喜欢听到其他可以实现相同目标的方法,而不必使用 gdb。
试试open4,它允许你打开标准输入、标准输出、标准错误到任意命令。您可以完全按照您的描述使用 open4 来运行 gdb,我亲自完成了此操作,并且效果很好。可能想要创建一个处理运行命令和返回状态的包装类,因为 open4 只为您提供文件句柄。