~/talk

My Little Object File: How Linkers Implement C++

Talkat CppCon 2017 · 2017-09-24..09-29· [linux-and-operating-systems]
links:none on file
slides:none on file

Walks a C++ translation unit through actual object formats and tools, showing how ELF, MachO, COFF encode sections, symbols and relocations and how the linker turns many .o files into an executable. Demonstrates with objdump/readelf outputs, shows init_array concatenation, comdat/weak selection for inline/template dedupe, ICF and relaxation merging identical code, garbage collection of unused sections, and PLT/GOT lazy binding for dynamic loads. Uses readelf objdump nm llvm-readobj and compares LD/Gold/LLD; the small examples run and produce the expected outputs.

AI-written summary · about

  1. 0:00Introduction to build pipelines
  2. 1:13Inside an object file
  3. 2:42Linking mechanisms and data
  4. 23:31Linker operation and optimization
  5. 30:56Dynamic linking basics
  6. 33:35Q&A and best practices
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.