linux 查看elf相关命令

介绍几个在查看elf文件动态链接库会用到的几个命令:

ldd:用于打印程序或者库文件所依赖的共享库列表。

ldd命令并不是可执行程序,而只是shell脚本。


readelf: 命令是一个有很多特性的实用程序,它让您能够解析和读取 ELF 对象


objdump:它展示了关于对象文件的信息;elf文件的各个section段


nm:它列出来自对象文件(包括调试信息)的符号。

第一列:当前符号的地址

第二列:当前符号的类型(关于类型的说明,感兴趣的朋友可以man nm详阅)

第三列:当前符号的名称

-C 就可以把这些难以识别的符号,转换成便于我们阅读的符号.

作用:

(1)判断指定程序中有没有定义指定的符号 (比较常用的方式:nm -C proc | grep symbol)
(2)解决程序编译时undefined reference的错误,以及mutiple definition的错误
(3)查看某个符号的地址,以及在进程空间的大概位置(bss, data, text区,具体可以通过第二列的类型来判断)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值