Linux:程序翻译
vim code.c
预处理
gcc -E code.c -o code.i
编译
gcc -S code.i -o code.s
汇编
gcc -c code.s -o code.o
链接
gcc code.o -o code
预处理:功能主要包括宏替换,头文件包含,条件编译,去注释等 。
编译:
编译器(gcc)将预处理完的文本文件 .i 文件 进行一系列的词法分析、语法分析、语义分析和优化,翻译成文本文件 .s文件 ,它包含一个汇编语言程序。
汇编
汇编器(as)将 .s 翻译成机器语言指令,把这些指令打包成一种叫做可重定位目标程序的格式,并将结果保存在目标文件 .o文件中, .o文件是一个二进制文件。
4.链接
链接到库文件中的库函数去。