gpt4 book ai didi

linux - 共享对象中的文本重定位?

转载 作者:太空狗 更新时间:2023-10-29 12:37:50 24 4
gpt4 key购买 nike

当我使用 gcc 编译以下代码(文件名为 d.c)时

int var=10;

void fun( void ) {
var++;
int a=var;
}

gcc -c -o d.o -fPIC d.c 

并调用 readelf -S 有一个名为 .rela.text 的重定位部分用于 .text 部分

如果我使用

将文件链接到共享对象 (reloctest.so)
gcc  -shared d.o -o reloctest.so 

搬迁部分消失

是否保证共享库中的.text段没有重定位?我想是的(由于为 PLT 和 DYN 添加了搬迁)但我不确定

谢谢大家的回答

最佳答案

基本上是。

如果你想完全理解它,你应该阅读 understanding elf .

关于linux - 共享对象中的文本重定位?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6040970/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com