Linux c程序源代码编译四阶段
#include <stdio.h>
#define PI 3.14
int main(int argc, const char *argv[]) {
float area = PI * 4;
printf("%.5f",area);
exit(0);
}
第一个阶段:预编译
gcc -E main.c -o main.I
从预编译的结果很容易可以看出 替换PI的值 以及导入#include<stdio.h>该头文件的内容.以及预编译指令#if #endif等
故在编码过程可以用预编译指令 注释代码 #if 0 #endif
第二阶段:编译 output 汇编Code
gcc -S main.c -o main.s[gcc -S main.I -o main.s]
第三阶段:把汇编代码生成目标文件 *.o
gcc -c main.s -o main.o 【as -o main.o main.s】
第四阶段:链接
gcc -o main main.o【ld -o main main.o】
执行 ./main