首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >gdbserver -->应答包含无效字符

gdbserver -->应答包含无效字符
EN

Stack Overflow用户
提问于 2017-12-22 14:54:33
回答 1查看 2.5K关注 1票数 1

我正在尝试用gdbserver调试一个跨编译的应用程序。不幸的是,我的主机上出现了以下错误:

Reply contains invalid hex digit 59

我所做的是:

  • 用gcc -ggdb3 -std=gnu89标志编译了我的应用程序“行生成器”(它只是一个测试程序)(使用-g而不是-ggdb3没有任何区别)。
  • 将可执行文件复制到我的嵌入式系统。执行人员可以在那里执行
  • 在嵌入式系统上启动gdbserver 192.168.10.20:54320行生成器
  • 在主机上启动gdb: gdb行-generator.gdb
  • 目标远程192.168.10.102:54320
  • 在主机上得到了以下响应: 使用192.168.10.102:54320进行远程调试 答复包含无效的十六进制数字59。
  • 在服务器上我得到了这个: 从主机192.168.10.20进行远程调试 readchar:拿到EOF了 远程端已终止连接。GDBserver将重新打开连接。 监听端口54320

我从来没有远程使用过gdb,所以可能我遇到了初学者的问题,所以每个响应都可能会有所帮助。

编辑:我的gdbserver是由嵌入式硬件制造商提供的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-12-22 15:39:04

我发现,远程调试交叉编译的可执行文件需要在主机上为这个目的编译gdb。在我的例子中,这意味着我必须使用以下命令

代码语言:javascript
复制
/opt/microblaze-uclinux-tools/bin/microblaze-uclinux-gdb line-g
enerator.gdb

而不是简单的gdb line-generator.gdb

幸运的是,正确的文件是由嵌入式板制造商提供的!老实说,我不完全理解上下文,所以如果有人对此有解释的话,我会很高兴听到的!

干杯,斯特凡

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47943428

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档