处理丢失或无效的qOffsets

时间:2016-10-25 21:20:38

标签: gdb gdbserver

我有一个自定义gdbserver,有时无法在qOffsets的响应中给出有效的偏移量(出于好的原因,我不会进入这里)。我试图为GDB客户端/用户找到一种方法来弥补这一点。用户可以确定正确的负载偏移,直到不幸地加载图像为止。

当qOffsets没有得到回复(或得到" TextSeg = 0")时,"信息文件"显示各个部分 - 好像图像是在偏移0处加载的。

我尝试使用命令

section EX 0x00020000
section .xxxx 0x00025000
section ...

为每个部分手动提供正确的偏移量。

当我发出" info file"再次,现在出现正确的偏移量。

然而,"信息地址主要"仍然显示main的地址 - 如果它在偏移0处加载 - 所以不知何故,符号分辨率忽略了"部分"我提供的补偿。

也就是说,我得到了:

(gdb) info address main
Symbol "main()" is a function at address 0x474.

但我应该得到:

(gdb) info address main
Symbol "main()" is a function at address 0x20474.

有没有办法在客户端修复此问题?

0 个答案:

没有答案
相关问题