我在 x86_64 目标上远程调试 x86_64 可执行文件,但 gdbserver 似乎报告调试 i386 < / strong>可执行文件:
在目标:
上# gdbserver --attach :9999 12345
Attached; pid = 12345
Listening on port 9999
在主机:
上# gdb
<normal GDB banner>
(gdb) target remote 10.0.0.1:9999
Remote debugging using 10.0.0.1:9999
0x773660d8 in ?? ()
(gdb) show architecture
The target architecture is set automatically (currently i386)
是 gdb (在主机上)还是 gdbserver (在目标位置),谁错误地确定了架构?为什么会发生这种情况,以及如何解决这个问题?
任何见解的TIA。
答案 0 :(得分:0)
问题解决了:
&GT;是gdb(在主机上)还是gdbserver(在目标上),谁错误地确定了架构?
是gdbserver。
&GT;为什么会发生这种情况?
我使用的是为错误的架构(i386)构建的gdbserver二进制文件。