gcc 生成可执行文件的四个步骤

写这个文章是因为发现网上有两种叫法
A叫法 预处理 - 编译 - 汇编 - 链接
B叫法 预处理 - 汇编 - 编译 - 链接

额,纠结的我呀,难受,还是直接看英文吧

假如我们有一个hello.c 的文件最终想要生成 hello这样一个ELF文件,需要有四步操作

#1  生成预处理文件
# Stop after the preprocessing stage
gcc -E hello.c  -o hello.i

#2  生成汇编文件
# Stop after the stage of compilation proper
gcc -S hello.i -o hello.s

#3  生成可链接文件
# Compile or assemble the source files
gcc -c hello.s -o hello.o

#4 生成可执行文件
gcc hello.o -o hello

所以用英文来说就是
Preprocessing [预处理]
Compliation [编译]
Assembly [汇编]
Linking [链接]

显然A说法看起来更对一些

你可能感兴趣的:(gcc 生成可执行文件的四个步骤)