GCC编译过程

本文详细介绍了使用GCC进行编程的编译过程,包括预处理、编译、汇编和链接四个步骤,重点讲解了每个阶段的作用和参数选项。通过-E选项预处理,-S编译到汇编,-c汇编并保存,-ofilename指定输出文件名,帮助开发者理解代码从高级语言到机器指令的转换过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

预处理:gcc -E hello.c -o hello.i

编 译:gcc -S hello.i -o hello.s

汇 编:gcc -c hello.s -o hello.o

链 接:gcc hello.o -o hello_elf

-E:只进行预处理

-S:只进行预处理和编译

-c:只进行预处理、编译和汇编

-o filename:指定生成的输出文件名为filename

预处理:删掉注释(因为不需要执行),将include的头文件的内容展开,放在可执行的cpp文件开头(相当于头文件里面的函数声明,变量定义等都放在了开头),同时替换define的变量

编译:将代码转换成汇编,这一步检查语法

汇编:将汇编代码转换成01的二进制文件

链接:把相应的系统动态库等链接起来,生成可执行文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值