程序编译:gcc
gcc C文件 //可以生成一个可执行文件a.out
生成特定的文件名:
gcc C文件 -o 生成的文件名称(这文件最好没有后缀名)
把一个C文件编译成这个可执行文件,其实有四个过程:预处理,编译,汇编,链接四个过程,最后才成可执行的文件;
常见的文件后缀:
.c c文件
.h .h文件
.i 预处理过的c文件
.o 编译后的目标文件
.s 汇编语言文件
1.预编译:
gcc -E hello.c -o hello.i 生成了一个.i文件
把#include <stdio.h>所包含的文件全部拉到了hello.i中;
2.编译:把生成的预编译文件编译成汇编文件
gcc -S hello.i -o hello.s 生成了一个.s文件汇编文件
3.汇编:将汇编代码编译成二进制代码
gcc -c hello.s -o hello.o 生成了一个.o的目标文件
4、链接:将当前的目标文件和其他使用到的库文件整合到一起生成可执行的二进制文件
gcc hello.o 生成a.out文件
运行 ./a.out