我们写的代码一般都是高级语言,如.c,
1.首先要通过预编译(将include的头文件、define的变量进行层层替换)
命令是:gcc -E hello.c -o hello.i
2.有了预编译,自然就是编译,此过程将产生汇编语言
命令是 gcc -S hello.i -o hello.s
3.这里就是汇编出目标文件,即二进制文件
命令是:gcc -c hello.s -o hello.o
二进制文件就不能像前面的.i/.s文件一样,通过文本打开,需要通过
ojbdump -sd hello.o查看,相当于是反汇编的过程
本文详细介绍了C语言从源代码到可执行文件的编译过程,包括预编译、编译和汇编阶段,以及如何使用gcc工具链进行操作。在预编译阶段,include的头文件和define的宏被处理;编译阶段生成汇编代码;最后汇编成目标文件。二进制文件的内部结构可通过objdump工具进行反汇编查看。
1万+

被折叠的 条评论
为什么被折叠?



