Object code

It is the machine code for one particular library or module that will make up the completed product.

It may also contain placeholders or offsets, not found in the machine code of a completed program, that the linker will use to connect everything together.

An object file is assumed to begin at a specific location in memory, often zero.

It contains information on instructions that reference memory, so that the linker can relocate the code when combining multiple object files into a single program.

A linker links several object (and library) files to generate an executable.