Preprocessor (cpp) → file.i Compiler (cc1) → file.S Assembler (as) → file.o Linker (ld), link .so, .o file into a ELF file