gcc 的执行过程详解 预处理 编译 汇编 链接

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/gyx_2110/article/details/71329991

在Linux中,使用GCC编译程序的过程可以被分为四个阶段:



下面我们以hello.c为例,来看看各个阶段,编译器做了什么


----对hello.c进行预编译

执行命令:gcc -E hello.c -o hello.i,打开生成的hello.i文件


可以看到由原来的10行变成了858行。

----对hello.i进行编译,这个时候我们的代码就变成汇编指令了。

gcc -S hello.i -o hello.s


----对hello.s进行汇编,这一步的工作是生成二进制机器指令,

gcc -c hello.s -o hello.o


----最后,对hello.o进行链接,生成可执行程序

gcc hello.o -o hello




猜你喜欢

转载自blog.csdn.net/gyx_2110/article/details/71329991