谈到linux,没人不懂gcc,当然,学过C语言的都该知道gcc,毕竟所有的类C编译器基本都有gcc来构成。
GCC的意思随着时间的发展也从最初的GNU C Compiler发展到GNU Compiler Collection,也就是GNU编译器的统称集合。GCC对与操作系统与硬件的的支持,可以说是:无处不在。
一、gcc编译过程
GCC的编译过程要分为四个阶段来进行:预处理阶段,编译阶段,汇编阶段,以及链接阶段。
1、预处理阶段(也称预编译阶段)
gcc -E helloworld.c -o -helloworld.i
上述的-E参数将helloworld.c 文件进行预处理,-o参数将预处理后的文件输出为helloworld.i 文件
-E 为gcc预处理参数,其后跟.c源代码文件
-o 为gcc输出文件参数,其后跟.i的文件名
2、编译阶段
gcc -S helloworld.i -o helloworld.s