我必须在运行时重定位一个精灵,所以我想访问链接器发出的所有重定位:因此使用--emit-relocs
ld 选项。问题是我想将所有.rela.*
部分分组到链接描述文件中的一个.rela.dyn
部分,然后通过这个唯一的部分来重新定位所有符号。
但是我无法让我的链接器脚本来实现这一点,我仍然.rela.*
在最终的精灵中看到很多部分,而不是输出部分.rela.dyn
。以下是我在链接器脚本中使用的内容,实际上只是从另一个有效但不使用的体系结构链接器脚本复制而来--emit-relocs
:
.rela.dyn : ALIGN(8) {
*(.rela .rela*)
}
选项是否--emit-relocs
“绕过”链接描述文件?还是我只是错过了什么?
谢谢,
亚历克斯