GCC
GCC原名为GNU C语言编译器(GNU C Compiler),原本只能处理C语言。后来随着功能的扩展,支持的语言种类越来越多 ,故更名为GCC(GNU Compiler Collection,GNU编译器套件)
因此 GCC既可以指代C编译器,也可以指代GNU编译套件
其套件囊括了许多子工具:
- gcc: C 编译器
- g : C 编译器
- cpp: C 预处理器
- as: 汇编器
- ld: 连接器
- objcopy: 目标文件翻译器,用于从连接器输出中创建一个ROM 映像
- objdump: 目标文件阅读器, 用于反汇编目标文件
- make: make 工具
- gdb: 源代码调试器
GCC工具链
一个程序从代码编译到机器执行,中间需要经历很多步骤,比如从预编译,编译,到汇编和连接, 这一系列环环相扣过程中涉及到的GNU工具集,称之为GCC工具链
在windows平台中,我们有许多的图形化IDE可以选择,一般编译工具链都集成进了软件内部,无需开发者关心,但是在Linux平台,基本以命令行的方式进行操作,那么对于开发者来说,需要了解每个工具的作用和具体使用方法