test1/cmake-build-debug/test1: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=45d6523007a7906dfb699d5f6fc66f3f4b7ec720, with debug_info, not stripped ELF 64-bit表示文件是...
// ELF文件类型的MAGIC Number,等于固定值’E’ EI_MAG2 = 2, // ELF文件类型的MAGIC Number,等于固定值’L’ EI_MAG3 = 3, // ELF文件类型的MAGIC Number,等于固定值’F’ EI_CLASS = 4, // 区分ELF32和ELF64 EI_DATA = 5, // 区分LSB和MSB,即大小端 EI_VERSION = 6, // 目前固定为1...
fileprogram# 输出:"ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked..." (2) 分析符号 nm program# 显示符号表(函数、全局变量地址) objdump -t program# 更详细的符号信息 (3) 动态链接依赖 lddprogram# 列出运行时依赖的共享库 (4) 反汇编代码 objdump -d program# 反汇编...
我们先用file命令来查看main.c编译生成的main.o文件的属性: file main.o 输出: main.o: ELF 64-bit LSB relocatable, x86-64, version 1 (SYSV), not stripped 我们看到这里的main.o文件是可重定向( relocatable) 的ELF文件,这里的重定向指的就是我们链接过程中对外部符号的引用。也就是说,编译过的main....
使用file命令查看core文件类型: file core.28355core.28355:ELF64-bitLSBcore file x86-64,version1(SYSV),SVR4-style,from'./a.out' 1. 2. 复制 可见,Linux下的目标文件.o,共享目标文件.so、可执行文件以及核心转储文件core dump均属于ELF文件。
linux 可以通过 file 命令查看。目标文件和可执行文件跟操作系统和编译器密切相关,不同平台下的格式会有些差异。 目标文件: 文件格式:ELF 64bit LSB:小端 x86-64:平台 (和工具链有关) relocatable:可重定位 ...
ELF 文件头(File Header):位于文件最开始,包含了整个文件的结构信息,例如是ELF 幻数,是哪种 ELF 文件,程序头表、节头表的地址等。 程序头表(Program Header Table):描述了所有段的信息 节头表(Section Header Table):描述了所有节的信息 本文不会解释结构体每个元素,而是利用 readelf 工具解读。如果需要详细到...
/bin/bash: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=12f73d7a8e226c663034529c8dd20efec22dde54, stripped $ file core core: ELF 64-bit LSB core file x86-64, version...
linux 可以通过 file 命令查看。目标文件和可执行文件跟操作系统和编译器密切相关,不同平台下的格式会有些差异。 目标文件: 文件格式:ELF 64bit LSB:小端 x86-64:平台 (和工具链有关) relocatable:可重定位 not stripped:没有 stripped 可执行程序:
使用gcc采用默认参数编译,使用file命令查看: ELF 64-bit LSB executable:可见,是ELF格式64bit程序。那么在64位机上是否可以编译出来32bit程序呢?答案是可以的。但是gcc的参数需要多加一个-m32。 dynamically linked:链接方式是动态链接。说明程序在执行之前还需要链接其他的so。查看具体需要链接那些so,可以使用ldd hell...