编译文件过程
1.预处理:
对源文件进行预处理生成预处理文件,预处理CPP根据预处理指令(如#include,#define等)所包含的文件内容插入程序中
gcc -E test.c -o test.i//可查看编译过程,用vim test.i 。最后面有详细过程
printf("ARE=%.2f\n",ARE(3+2));==> printf("ARE=%.2f\n",3.14 *(3+2)*(3+2));
2.编译:
根据预处理文件,编译为汇编语言,调用汇编程序生成汇编代码(.s文件)
gcc -S test.s -o test.o
3.汇编:
调用汇编程序,翻译成机器语言,生成目标文件(.o文件)
gcc -c test.s -o test.o
4.链接:
将test.o和运行时文件,库函数进行链接,调用连接器,将程序中用到的函数加到程序中,生成可执行文件
gcc test.o -o test