GCC编译器编译过程
GCC编译器编译过程
#生成test可执行文件
g++ test.cpp -o test
其实,上述命令可以分解为以下几个步骤
1. 预处理-Pre-Processing
# -E 选择指示编译器仅对输入文件进行预处理,将头文件和宏定义等展开,生成test.i文件
g++ -E test.cpp -o test.i
2. 编译-Compiling
# -S 将源代码编译为汇编语言
g++ -S test.i -o test.s
3. 汇编-Assembing
# -c 将源代码编译为机器语言的目标语言
g++ -c test.s -o test.o
4. 链接-Linking
#到这一步其实命令和我们完整的命令已经一样了,又因为我们的源文件已经是.o机器语言了,因此这一命令实际上只要做链接的工作了
g++ test.o -o test