obj 文件的重定位
[wzhou@dcmp10 ~]$ cat hello.c
#include <stdio.h>
#include <unistd.h>
int main(int argc, char** argv)
{
getuid();
getchar();
return 0;
}
gcc -c hello.c -o hello.o
生成 obj 文件。
[wzhou@dcmp10 ~]$ readelf -S hello.o
There are 10 section headers, starting at offset 0xe0:
Section Headers:
[Nr] Name Type Addr Off Size ES Flg Lk Inf Al
[ 0] NULL 00000000 000000 000000 00 0 0 0
[ 1] .text PROGBITS 00000000 000034 00002d 00 AX 0 0 4
[ 2] .rel.text REL 00000000 000330 000010 08 8 1 4
[ 3] .data PROGBITS 00000000 000064 000000 00 WA 0 0 4
[ 4] .bss NOBITS 00000000 000064 000000 00 WA 0 0 4