ELF 格式:ELF 是 .o/.so 的子集还是 ELF 基本上是整个 .o/.so?
ELF format: is ELF a subset of .o/.so or is ELF basically the entire .o/.so?
我目前正在研究 ELF 格式。我想确认一些我认为正确的事情。
ELF是一种格式,代表Executable and linkable format。在linux中,一切都是ELF格式。
当使用gcc 编译带有-c 和-fPIC 文件的代码时,它会将代码转换为ELF 格式的.o 文件。
如果我说 .o/.so 和 linux 可执行文件是 ELF 文件是否正确?或者 ELF 是 .o/.so 文件中的东西?换句话说,ELF 是 .o/.so 的子集还是 ELF 基本上是整个 .o/.so?
我想确认这一点,因为我想确保我理解这一点。抱歉问了一个愚蠢的问题。
Is it correct if I say .o/.so and linux executables are ELF files? or is ELF something inside a .o/.so file? In other words, is ELF a subset of .o/.so or is ELF basically the entire .o/.so?
是的。目标文件 (.o
)、共享库 (.so
) 和可执行文件是四种 ELF 文件中的三种。 (第四种类型是核心文件——崩溃进程状态的转储,有时用于 post-mortem 调试。)
所有四种类型都使用相同的通用格式,但会因类型而异。例如,可执行文件通常有一个入口点,而目标文件和共享库则没有。
我目前正在研究 ELF 格式。我想确认一些我认为正确的事情。
ELF是一种格式,代表Executable and linkable format。在linux中,一切都是ELF格式。
当使用gcc 编译带有-c 和-fPIC 文件的代码时,它会将代码转换为ELF 格式的.o 文件。
如果我说 .o/.so 和 linux 可执行文件是 ELF 文件是否正确?或者 ELF 是 .o/.so 文件中的东西?换句话说,ELF 是 .o/.so 的子集还是 ELF 基本上是整个 .o/.so?
我想确认这一点,因为我想确保我理解这一点。抱歉问了一个愚蠢的问题。
Is it correct if I say .o/.so and linux executables are ELF files? or is ELF something inside a .o/.so file? In other words, is ELF a subset of .o/.so or is ELF basically the entire .o/.so?
是的。目标文件 (.o
)、共享库 (.so
) 和可执行文件是四种 ELF 文件中的三种。 (第四种类型是核心文件——崩溃进程状态的转储,有时用于 post-mortem 调试。)
所有四种类型都使用相同的通用格式,但会因类型而异。例如,可执行文件通常有一个入口点,而目标文件和共享库则没有。