【问题标题】:GDB + TUI + GNU Screen - sending gdb output to different screenGDB + TUI + GNU Screen - 将 gdb 输出发送到不同的屏幕
【发布时间】:2014-03-26 20:29:06
【问题描述】:

我正在使用 TUI 运行 GNU Screen 和 gdb,并且遇到了一些与回滚相关的问题,因此我想将输出发送到不同的屏幕窗口。最好的方法是什么?

理想情况下,我希望 tui 输入和输出(即我喜欢从 gdb 中“打印”的任何操作)位于一个窗口上,而 printf 等的输出位于另一个屏幕窗口上。

有人知道怎么做吗?

(我实际上是通过 gdb + 串行进行远程调试,所以它通过我的 ~/.gbdinit 中的目标远程 /dev/ttyS0 进行连接)。

【问题讨论】:

  • 也许重定向程序的输出 (run ... > output_file) 并在另一个屏幕上执行 tail -F output_file 以阅读它?

标签: c linux gdb gnu-screen tui


【解决方案1】:

可能有几种方法可以做到这一点。我认为最简单的是“tty”命令。请参阅“帮助 tty”。

另一种方法是“screenify”采用的方法——使用 gdb 的低级调用功能来更改程序的控制 tty(和各种 std* 文件描述符)。

另一种方法是在另一个 tty 中运行您的程序,然后使用“attach”。

【讨论】:

  • 你能帮我看看这个吗?我不太明白。我一直在查看此页面 (sourceware.org/gdb/onlinedocs/gdb/Input_002fOutput.html),但我并没有真正遵循我应该做的事情。在我的 gdb 提示符中,我看到“(gdb)显示劣质 tty。将来运行正在调试的程序的终端是“”。从另一个屏幕窗口运行“tty”会给我“/dev/pts/11”。设置 tty 也不会改变我输入数据的位置吗?
猜你喜欢
  • 2017-02-07
  • 2014-06-22
  • 1970-01-01
  • 1970-01-01
  • 2018-01-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多