readelf 用来显示 ELF 格式文件信息,该命令选项很多,其中 -a 选项可以用来显示 ELF 文件的所有信息。
另外编译器下也有一个查看elf文件信息的可执行程序, 比如arm-linux-gnueabihf-readelf
readelf -a canconfig
Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
EXIDX 0x001ff8 0x00011ff8 0x00011ff8 0x00008 0x00008 R 0x4
PHDR 0x000034 0x00010034 0x00010034 0x00100 0x00100 R E 0x4
INTERP 0x000134 0x00010134 0x00010134 0x00019 0x00019 R 0x1
[Requesting program interpreter: /lib/ld-linux-armhf.so.3]
LOAD 0x000000 0x00010000 0x00010000 0x02004 0x02004 R E 0x10000
LOAD 0x002004 0x00022004 0x00022004 0x001cc 0x001d8 RW 0x10000
DYNAMIC 0x002010 0x00022010 0x00022010 0x000f8 0x000f8 RW 0x4
NOTE 0x000150 0x00010150 0x00010150 0x00044 0x00044 R 0x4
GNU_STACK 0x000000 0x00000000 0x00000000 0x00000 0x00000 RW 0x10
Version needs section '.gnu.version_r' contains 1 entries:
Addr: 0x0000000000010804 Offset: 0x000804 Link: 6 (.dynstr)
000000: Version: 1 File: libc.so.6 Cnt: 1
0x0010: Name: GLIBC_2.4 Flags: none Version: 2