gdbserver --> 回复包含无效字符
gdbserver --> Reply contains invalid character
我正在尝试使用 gdbserver 调试交叉编译的应用程序。不幸的是,我的主机出现以下错误:
Reply contains invalid hex digit 59
这是我所做的:
- 使用 gcc -ggdb3 -std=gnu89 标志编译了我的应用程序 "line-generator"(这只是一个测试程序)(使用 -g 而不是 -ggdb3 没有任何区别)
- 将可执行文件复制到我的嵌入式系统。 exec可以在那里执行
- 在嵌入式系统上启动了 gdbserver 192.168.10.20:54320 line-generator
- 在我启动 gdb 的主机上:gdb line-generator.gdb
- (gdb) 目标远程 192.168.10.102:54320
- 在主机上收到此响应:
使用 192.168.10.102:54320
进行远程调试
回复包含无效的十六进制数字 59
- 在服务器上我得到了这个:
从主机 192.168.10.20
进行远程调试
readchar:得到 EOF
远程端已终止连接。 GDBserver 将重新打开连接。
侦听端口 54320
我从来没有远程使用过 gdb,所以也许我 运行 是初学者的问题,所以每个回复都可能有所帮助。
编辑:我的 gdbserver 是由嵌入式硬件制造商提供的。
我发现远程调试交叉编译的可执行文件需要主机上的 gdb 为此目的进行编译。就我而言,这意味着我必须使用此命令
/opt/microblaze-uclinux-tools/bin/microblaze-uclinux-gdb line-g
enerator.gdb
而不是简单的gdb line-generator.gdb
幸好嵌入式板制造商提供了正确的文件!
老实说,我不完全理解上下文,所以如果有人对此有解释,我会很高兴听到这个!
干杯,斯特凡
我正在尝试使用 gdbserver 调试交叉编译的应用程序。不幸的是,我的主机出现以下错误:
Reply contains invalid hex digit 59
这是我所做的:
- 使用 gcc -ggdb3 -std=gnu89 标志编译了我的应用程序 "line-generator"(这只是一个测试程序)(使用 -g 而不是 -ggdb3 没有任何区别)
- 将可执行文件复制到我的嵌入式系统。 exec可以在那里执行
- 在嵌入式系统上启动了 gdbserver 192.168.10.20:54320 line-generator
- 在我启动 gdb 的主机上:gdb line-generator.gdb
- (gdb) 目标远程 192.168.10.102:54320
- 在主机上收到此响应:
使用 192.168.10.102:54320
进行远程调试 回复包含无效的十六进制数字 59 - 在服务器上我得到了这个:
从主机 192.168.10.20
进行远程调试 readchar:得到 EOF
远程端已终止连接。 GDBserver 将重新打开连接。
侦听端口 54320
我从来没有远程使用过 gdb,所以也许我 运行 是初学者的问题,所以每个回复都可能有所帮助。
编辑:我的 gdbserver 是由嵌入式硬件制造商提供的。
我发现远程调试交叉编译的可执行文件需要主机上的 gdb 为此目的进行编译。就我而言,这意味着我必须使用此命令
/opt/microblaze-uclinux-tools/bin/microblaze-uclinux-gdb line-g
enerator.gdb
而不是简单的gdb line-generator.gdb
幸好嵌入式板制造商提供了正确的文件!
老实说,我不完全理解上下文,所以如果有人对此有解释,我会很高兴听到这个!
干杯,斯特凡