GCC编译器原理(一)------GCC 工具:addr2line、ar、as、c++filt和elfedit

1.3 GCC 工具

1.3.1 binutils 工具集

工具

描述

addr2line

给出一个可执行文件的内部地址,addr2line 使用文件中的调试信息将地址翻译成源代码文件名和行号。

ar

这是一个程序,可通过从文档中增加、删除和析取文件来维护库文件。通常使用该工具是为了创建和管理连接程序使用的目标库文档。

as

GNU 汇编器。实际上它是一族汇编器,因为它可以被编译或能够在各种不同平台上工作。

c++filt

程序接受被 C++编译程序转换过的名字(不是被重载的) ,而且将该名字翻译成初始形式。

elfedit

更新 ELF 文件的 ELF 头。

gprof

该程序会监督编译程序的执行过程,并报告程序中各个函数的运行时间,可以根据所提供的配置文件来优化程序。

ld

GNU 连接程序。该程序将目标文件的集合组合成可执行程序。

ld.bfd

到 ld 的硬链接。

libbfd

二进制文件描述器库。该程序是 binutils 包的一部分

libiberty

包含多个 GNU 程序会使用的途径,包括 getoptobstackstrerrorstrtol 和 strtoul。

libopcodes

一个库,用于处理 opcodes——处理器指令的 "可读文本" 版本;用于编制 objdump 这样的工具。

nlmconv

将可重定位的目标文件转换成 NetWare 可加载模块(NetWare Loadable ModuleNLM) 。

nm

列出目标文件中定义的符号。

objcopy

将目标文件从一种二进制格式复制和翻译到另外一种。

objdump

显示一个或多个目标文件中保存的多种不同信息。

ranlib

创建和添加到 ar 文档的索引。该索引被 ld 使用来定位库中的模块。

readelf

ELF 格式的目标文件显示信息

size

列出目标文件中每个部分的名字和尺寸。

strings

浏览所有类型的文件,析取出用于显示的字符串。

strip

从目标文件或文档库中去掉符号表,以及其他调试所需的信息。

windres

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值