c的编译过程详解

c语言的编译过程(linux下以hello.c示例):

gcc -o hello.i -E hello.c

将hello.c源文件预编译为为hello.i源文件,此时hello.c中的include指令包含的各种库(此示例中只有标准库)都会替换成文本写入预编译文件中。

(中间代码未截图)

gcc -o hello.s -S hello.c

将预编译的后的源文件进行汇编,将c语言转换为汇编语言。

gcc -o hello.o -c hello.s

将hello.s文件编译为二进制文件,但此时编译成的文件并不能被成功运行,缺少必要的第三方库

gcc -o hello hello.o

你可能感兴趣的:(C)