Ian Lance Taylor’s Linker Notes

Ian Lance Taylor is working on a new ELF linker called gold which is designed for speed and will do incremental linking. He is writing notes on how linkers work (with specifics for ELF and i386) which are a must read for everybody interested in these kind of low level technicalities.

  • Linkers part 1 – A Personal Introduction and A Technical Introduction.
  • Linkers part 2 – Linker Technical Introduction, Basic Linker Data Types, Basic Linker Operations.
  • Linkers part 3 – Address Spaces, Object File Formats.
  • Linkers part 4 – Shared Libraries (Procedure Linkage Table – PLT and Global Offset Table – GOT).
  • Linkers part 5 – Shared Libraries Redux, ELF Symbols.
  • Linkers part 6 – Relocations, Position Dependent Shared Libraries.

There will be more notes in the future, but this should keep you occupied for a little while (should make a great weekend read) The writing does jump a little between subjects, just keep on reading and go back over all the notes again in the end. There are some assembler tricks in there so keep your x86 assembly manual handy. Have fun!