编译流水线观察器

点选停止点,再逐步执行。观察 gcc 是怎样调度预处理器、编译器、汇编器和链接器的,以及每一步到底产生什么文件。

当前路径

  1. 输入

    源代码

    宏、条件编译和 #include 还未展开。

    hello.c
  2. -E

    预处理

    展开头文件和宏,仍然是 C 文本。

    hello.i
  3. -S

    编译

    完成语义分析与优化,输出汇编文本。

    hello.s
  4. -c

    汇编

    得到 ELF 可重定位对象,符号地址未必已定。

    hello.o
  5. 链接

    可执行文件

    解析对象和库,写入入口、段与动态依赖。

    hello