gcc编译器工作流程和常用编译参数


编译器工作流程

首先介绍下编译器的工作流程,在使用gcc编译程序时,编译过程分为四个阶段:

  1. 预处理(Pre-Processing)
  2. 编译(Compiling)
  3. 汇编(Assembling)
  4. 链接(Linking)

常用编译参数

无任何参数

gcc test.c

如果没有添加任何参数,则编译器将默认执行预处理、编译、汇编、连接操作,最后直接生成默认名为a.out的可执行程序。


-o参数:指定输出名称

gcc -o test test.c

使用-o参数指定输出名称,不加-c、-S、-E参数,


-E参数:只进行预处理

gcc -E -o test.i test.c

使用-E参数对源程序进行预处理,将#include,#define等进行文件插入及宏扩展等操作,生成.i后缀名的文件(不同版本不一样,有的将预处理后的内容打印到屏幕上)。


-S参数:进行预处理、编译

gcc -S -o test.s test.c

使用-S参数将对源程序进行预处理、编译,生成.s后缀名的汇编文件,里面包含汇编代码。


-c参数:进行预处理、编译、汇编

gcc -c -o test.o test.c

使用-c参数将对源程序进行预处理、编译、汇编操作,生成.o后缀名的目标文件。



免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM