0

我有一个在 x86 目标机器上生成的应用程序核心文件。所有库和二进制文件都被剥离,因此在目标上运行时的回溯非常少,甚至没有。我仍然看到符号名称和回溯。

但是,如果我将核心文件移动到主机并在主机上运行 x86 的 gdb,为它提供 sysroot ,它会抱怨以下内容。

无法在地址 0x104 加载内存

任何想法/建议为什么主机抱怨而目标可以解码回溯?顺便说一句,我所有的代码都是用 -fPIC 编译的。

4

1 回答 1

0

我执行以下操作: gdb-7.2 path_to_biniary ,然后设置 sysroot

试试这个:

gdb /path/to/binary
(gdb) set sysroot /path/to/buildroot
(gdb) core /path/to/core_file

在内核已经加载之后设置 sysroot (我相信在您的调用中发生)为时已晚。

于 2013-02-13T01:25:33.537 回答