Linux环境下程序编译过程详解

来源:互联网 发布:漯河公务员网络培训 编辑:程序博客网 时间:2024/05/29 05:57

Linux c程序源代码编译四阶段

#include <stdio.h>#define PI  3.14int 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




原创粉丝点击