• Preprocessing phase C preprocessor - Wikipedia
    • A preprocessing step performs macro substitution on program text, inclusion of other source files, and conditional compilation.
  • Compilation phase
  • Assembly phase (.o file)
  • Linking phase (ELF)
  1. Source Code → Lexical Analysis → Tokens
  2. Tokens → Syntactic Analysis → Abstract Syntax Tree
  3. Abstract Syntax Tree → Various Transformations → Some Intermediate Representation
  4. Some Intermediate Representation → Code Generation → {Machine,Byte,Source} Code