我正在调试在远程目标上的Linux环境中运行的嵌入式应用程序。电路板唯一可用的接口是单个串行接口。现在,它在init上连接/ bin / sh。我正在与minicom连接,(重新)用lrzsz加载我的应用程序,并使用printfs完成工作。
我想使用gdbserver进行更细粒度的调试,但连接似乎是一个问题。通常我会通过以太网连接,但是这个硬件上没有。我知道gdbserver可以在串行线上运行,但是现在我的一个通信端口属于shell。
有解决此限制的好方法吗?理想情况下,我希望能够运行gdbserver并在完成后返回shell。我尝试使用一个可用的串行接口(/ dev / ttyS0)从shell启动gdbserver,然后退出minicom并在我的主机上启动GDB,但它很麻烦&看似不起作用(即使在适当地设置了remotebaud之后)。 应该有效吗?在这种情况下,做什么是理智的事情?
答案 0 :(得分:2)
老派解决方案怎么样? Use PPP to run IP networking over your serial line。然后,您可以ssh(甚至telnet)到您的主板,并同时连接到gdb。根据您的情况,我建议您手动启动pppd
,以降低因配置错误而导致自己失锁的风险。 LDP链接的历史可以追溯到2000年,但包含许多调试建议。