#gcc hello.c
这条命令直接将hello.c生成一个可执行的a.out文件。这一过程中总共有四个步骤。
gcc编译源码的四个步骤:
预处理----->编译----->汇编----->链接
下面是hello.c文件
#include<stdio.h>
#define DISP "hello,welcome to C world!"
int main(void)
{
printf("%s\n",DISP);
return 0;
}
###预处理 对各种预处理指令(#include、#define等)进行处理,删除注释和多余的空白的字符,生成一份新的代码。 #gcc -E hello.c -o hello.i
-E通知编译器对目标文件(hello.c)进行预处理。
-o 对命令的输出结果进行导入操作,此处即把gcc -E hello.c的结果导入到hello.i文件(名字自定义)。
这条命令之后当前目录下多了一个hello.i文件。 ###编译 对代码语法、语义进行检查,是否有错误。生成汇编代码。
#gcc -S hello.i -o hello.s
-s 通知编译器对hello.i进行编译,此时目录下多一个hello.s文件。
###汇编 把汇编代码转换成计算机可以是别的二进制文件。
#gcc -c hello.s -o hello.o
-c 通知编译器把汇编代码转换成二进制文件。
###链接
将.o文件链接可执行文件。
#gcc hello.o -o hello
最后,在命令行输入./helllo即可执行文件。