This topic describes the object file format, called ELF
(Executable and Linking Format). There are three main types of
object files.
A relocatable file holds code and data suitable for linking
with other object files to create an executable or a shared object file.
An executable file holds a program suitable for execution; the
file specifies how
exec(2)
creates a program's process image.
A shared object file holds code and data suitable for linking
in two contexts. First, the link editor (see
ld(1))
processes the shared object file with other relocatable and shared
object files to create another object file. Second, the dynamic
linker combines it with an executable file and other shared objects
to create a process image.
Created by the assembler and link editor, object files are binary
representations of programs intended to be executed directly on a processor.
Programs that require other abstract machines, such as shell scripts, are
excluded.
Next topic:
File format