Skip to main content

Link (Computer Systems)

  • in object code, all referenced memories are left empty 0.
  • the linker will later produce an executable with all references combined.

Linker's Tasks

  • Symbol Resolution (Function names, Global variables, Static variables ... )
  • Memory Relocation (Modify reference addresses to the final memory location)

Object Files

  • Relocatable (.o): Code + Data + Metadata
  • Executable (./executable): Binary that OS loader can read and execute
  • Shared Object File (.so): Dynamically linked at load & runtime

Linux uses ELF