目录
一、gcc简介
Linux系统下的Gcc(GNU C Compiler)是GNU推出的功能强大、性能优越的多平台编译器,是GNU的代表作品之一。gcc是可以在多种硬体平台上编译出可执行程序的超级编译器,其执行效率与一般的编译器相比平均效率要高20%~30%。
二、简单的gcc编译
建立一个test.c文件:
#include <stdio.h>
int main(void)
{
printf("Hello World!\n");
return 0;
}
输入指令:
gcc test.c -o test
上述编译过程是分为四个阶段进行的,即预处理(也称预编译,Preprocessing)、编译(Compilation)、汇编 (Assembly)和连接(Linking)。
1 预处理
输入命令:
gcc -E test.c -o test.i 或 gcc -E test.c
该命令可以输出 test.i 文件中存放着 test.c 经预处理之后的代码。
gcc 的-E 选项,可以让编译器在预处理后停止,并输出预处理结果。
在本例中,预处理结果就是将stdio.h 文件中的内容插入到 test.c 中了。
2 编译为汇编语言代码
输入命令:
gcc -S test.i -o test.s
gcc 的-S 选项,表示在程序编译期间,在生成汇编代码后,停止,-o 输出汇编代码文件。
3 汇编
输入命令: