从源文件到可执行文件的整个过程涉及到多个步骤,具体包括:
预处理:这个阶段通过预处理命令对源代码进行处理,如删除“#define”宏定义,展开条件编译指令,以及处理包含文件等。预处理的结果通常保存在名为 .i 的文件中,这里的 "i" 是 "intermediate" 的缩写,表示这是一个中间文件。
编译:预处理完成后,会生成一个名为 .i 的中间文件。接下来,编译器会根据这个文件的内容,将其转换成汇编代码。生成的汇编文件通常以 "s" 作为扩展名。12
汇编:汇编器接收到编译器生成的汇编代码,并将这些代码翻译成机器指令。在这个过程中,汇编器还会对代码进行一些优化操作,以便后续的处理。
链接:链接器负责将所有需要的目标文件(在这里是指已经汇编好的 o 文件)组合成一个完整的可执行文件。链接器还会处理符号表,确保在整个程序中正确的符号被链接到正确的地址。
生成可执行文件:经过上述步骤之后,链接器成功地创建了最终的、可以直接执行的可执行文件,通常具有 ".exe" 或 ".so" 等扩展名。
综上所述,从源文件到可执行文件的过程中涉及到的步骤有预处理、编译、汇编和链接,而最终生成的可执行文件包含了这些步骤的结果。
标签:可执行文件,汇编,文件,预处理,源文件,过程,链接 From: https://www.cnblogs.com/Yyzc/p/18037375