一个程序源码从编译到生成可执行文件,主要经过了4个步骤:预处理、编译、汇编、链接。
1. 预处理
预处理是主要是处理源文件中以“#”开关的预编译指令,如:#include, #define等;
2.编译
编译是对经过预处理的文件进行词法分析、语法分析、语义分析和优化后产生的汇编代码文件。
3.汇编
汇编过程是汇编器将汇编代码转变成机器可以执行的指令,每一个汇编语句几乎都对应一条机器指令。 这个阶段输出目标文件(.o文件)
4.链接
链接过程是链接器对汇编阶段生成的目标文件及所依赖的一些库文件进行链接,这个阶段生成最终可执行文件或库文件。