1、gcc概述
GNU计划提供的编译器。(在unix系统中,则是cc编译器)
2、由源文件到可执行文件需要经历的步骤
1.预处理:头文件展开(#include)、宏替换(#define)、条件编译(#ifdef)(.i)使用预处理器
(预处理阶段处理的都是以#开头的代码)
2.编译:检查语法、转成汇编、生成汇编文件(.s/.S)使用编译器
3.汇编:由汇编变为目标代码(机器代码)生成目标文件(.o)使用汇编器as
4.链接:链接所有目标文件,生成可执行程序,使用链接器ld
3、 交叉编译
在宿主机下编程出在目标机下运行的代码的过程,这就是交叉编译。(首先需下载交叉编译器),即在当前cpu平台编译出在其他cpu平台运行的代码的过程。
4、编译选项
(1)-E:只进行预处理(.i)
gcc -E demo.c > demo.i :将预处理信息放到.i文件中
(2)-S:只激活预处理和编译,就是指把文件编译成为汇编代码。(.s/.S)