在具有单个串行连接的远程设备上使用gdbserver?

时间:2016-05-31 18:53:51

标签: linux debugging serial-port gdb gdbserver

我正在调试在远程目标上的Linux环境中运行的嵌入式应用程序。电路板唯一可用的接口是单个串行接口。现在,它在init上连接/ bin / sh。我正在与minicom连接,(重新)用lrzsz加载我的应用程序,并使用printfs完成工作。

我想使用gdbserver进行更细粒度的调试,但连接似乎是一个问题。通常我会通过以太网连接,但是这个硬件上没有。我知道gdbserver可以在串行线上运行,但是现在我的一个通信端口属于shell。

有解决此限制的好方法吗?理想情况下,我希望能够运行gdbserver并在完成后返回shell。我尝试使用一个可用的串行接口(/ dev / ttyS0)从shell启动gdbserver,然后退出minicom并在我的主机上启动GDB,但它很麻烦&看似不起作用(即使在适当地设置了remotebaud之后)。 应该有效吗?在这种情况下,做什么是理智的事情?

1 个答案:

答案 0 :(得分:2)

老派解决方案怎么样? Use PPP to run IP networking over your serial line。然后,您可以ssh(甚至telnet)到您的主板,并同时连接到gdb。根据您的情况,我建议您手动启动pppd,以降低因配置错误而导致自己失锁的风险。 LDP链接的历史可以追溯到2000年,但包含许多调试建议。