C语言编译过程
编译过程分为四个阶段:预处理
、编译
、汇编
、链接
编译过程一步完成
- 方式一:
gcc hello.c -o hello
// 可指定可执行文件名,运行程序:./可执行文件名
,这里即./hello - 方式二:
gcc hello.c
// 默认生成一个名为a.out的可执行文件
, 运行程序:./a.out
编译过程分步骤完成
1、预处理:gcc -E hello.c -o hello.i 将
.c
中的头文件、宏
展开,生成.i文件
(⚠️注意:预处理只是对#include
等预处理操作进行处理,并不会进行语法检查,这一阶段有语法错误也不会报错,在第二阶段即编译阶段才进行语法检查。)
2、编译:gcc -S hello.i -o hello.s 将预处理之后的.i文件
,生成.s汇编文件
3、汇编:gcc -c hello.s -o hello.o 将.s汇编文件
生成.o目标文件
4、链接:gcc hello.o -o hello_elf 将.o文件
链接成没有后缀名的目标文件
网友评论