Binutils工具集简介
如果使用GCC编译器,那么还有一个非常重要的、同样来自于GNU的工具集(toolchain) —— binutils toolchain。这一工具集中存在的一些工具,可以说是我们开发和调试不可缺少的利器。 Binutils中的工具不少和GCC相类似,也是针对特定的处理器的。
addr2line | 将程序地址翻译成文件名和行号;给定地址和可执行文件名称,它使用其中的调试信息判断与此地址有关联的源文件和行号 |
ar | 创建、修改和提取归档 |
as |
一个汇编器,将汇编文件输出为目标文件(.s->.o) |
c++filt | 被链接器用于修复 C++ 和 Java 符号,防止重载的函数相互冲突 |
elfedit | 更新elf文件的elf头 |
gprof | 显示分析数据的调用图表 |
ld | 链接器,讲几个对象文件和归档文件组合成一个文件,重新定位它们的数据并且捆绑符号索引 |
ld.bfd | 到ld的硬链接 |
nm | 列出给定对象文件中的符号及符号在内存中的(开始)地址(函数名、变量名) |
objcopy | 可以从程序文件中拷贝出我们指定的段 |
objdump | 显示程序文件相关信息和对程序文件反汇编 |
ranlib | 创建一个归档的内容索引并存储在归档内;索引列出其成员中可重定位的对象文件定义的所有符号 |
readelf | 显示有关elf二进制文件的信息,readelf -h *.exe进行查看 |
size | 列出给定程序文件中各段的大小 |
strings | 显示程序文件中的可显示字符串 |
strip | 移除对象的调试信息(符号等),文件瘦身 |
libiberty | 包含多个 GNU 程序会使用的途径,包括 getopt、obstack、strerror、strtol 和 strtoul |
libbfd | 二进制文件描述器库 |
libopcode | 用于处理 opcodes——处理器指令的 “可读文本” 版本或用于编制 objdump 这样的工具的库 |
分类:
GCC/GDB
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术