请求详解GCC编译C程序各阶段的输入输出及对应编译选项
C语言编译各阶段输入输出及GCC选项
预处理阶段
- 输入:
.c源文件(如main.c) - 输出:预处理后的
.i文本文件(如main.i) - GCC选项:
gcc -E main.c -o main.i
编译阶段
- 输入:预处理后的
.i文件(如main.i) - 输出:汇编代码
.s文件(如main.s) - GCC选项:
gcc -S main.i -o main.s
汇编阶段
- 输入:汇编代码
.s文件(如main.s) - 输出:机器码目标文件
.o(ELF格式,如main.o) - GCC选项:
gcc -c main.s -o main.o
链接阶段
- 输入:目标文件
.o及依赖的库文件(如main.o、系统标准库) - 输出:可执行文件(如
a.out或指定名称的可执行文件) - GCC选项:
gcc main.o -o main
内容的提问来源于stack exchange,提问作者Juliana Xavier
相关产品推荐
相关产品推荐

