GNU工具链
💡
原文英文,约400词,阅读约需2分钟。
📝
内容提要
本文介绍了GNU工具链的二进制文件,包括编译器GCC及其前后端组件,以及binutils中的工具如objcopy和strip,还提到性能分析工具gprof。
🎯
关键要点
- GNU工具链的二进制文件包括编译器GCC及其前后端组件。
- GCC位于/usr/bin,可能会以机器元组为前缀。
- binutils中的工具包括ld(链接器)、objcopy(复制和转换对象文件)和strip(移除符号和调试信息)。
- ld有两个实现:ld.bfd(旧版,支持性强)和ld.gold(新版,更快)。
- GCC的前端程序包括gcc(GNU编译器)、cc(gcc的别名)、g++(C++编译器)等。
- GCC的后端程序位于/usr/lib/gcc/<m>/<v>/,包括cc1(C编译器)和cc1plus(C++编译器)。
- gprof是性能分析工具,包含多个子工具如gp-archive和gprofng。
❓
延伸问答
GNU工具链的主要组成部分有哪些?
GNU工具链主要由编译器GCC及其前后端组件,以及binutils中的工具如ld、objcopy和strip组成。
GCC的前端程序包括哪些?
GCC的前端程序包括gcc、cc、g++等。
ld工具有哪些不同的实现?
ld工具有两个实现:ld.bfd(旧版,支持性强)和ld.gold(新版,更快)。
binutils中的objcopy工具有什么功能?
objcopy工具用于复制和转换对象文件。
gprof工具的用途是什么?
gprof是性能分析工具,用于分析程序的性能表现。
GCC的后端程序存放在哪里?
GCC的后端程序位于/usr/lib/gcc/<m>/<v>/目录下。
➡️