从零学习开发一个RISC-V操作系统(二)丨GCC编译器和ELF格式_riscv gcc


一、GCC(GUN Compiler Collection)

GCC是一个由GNU(一个自由软件基金会组织)开发的,遵循GPL许可证发行的编译器套件,是一个编译器的集合。支持 C、C++、Objective-C、Fortran、Ada 和 Go 语言等多种语言前端,已被移植到多种计算机体系架构上,如 x86、ARM、RISC-V 等。在之后的课程中使用的也是GCC作为编译工具。GCC 的初衷是为 GNU 操作系统专门编写一款编译器,现已被大多数 “Unix-like”操作系统(如 Linux、BSD、MacOS 等)采纳为标准的编译器。

1.1 GCC的命令格式

  • GCC 操作选项 文件名
常用操作选项 含义
-E 只做预处理(将包含的宏语言头文件转化为C语言文件)
-c 只编译(生成机器指令)不链接(与库文件相连),生成目标文件.o
-S 生成汇编代码
-o file 将输出的文件生成到由file指定文件名的文件中
-g 在输出的文件中加入支持调试的信息
-v 显示输出详细的命令执行过程信息

1.2 GCC的主要执行步骤

在这里插入图片描述

  1. 编译

编译(使用cc1程序,这里针对 C 语言,不同的语言有自己的编译器):编译器完成 “预处理” 和 “编译”,“预处理” 指处理源文件中以 “#” 开头的预处理指令&#x

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值