linux 查看elf相关命令
介绍几个在查看elf文件动态链接库会用到的几个命令:ldd:用于打印程序或者库文件所依赖的共享库列表。ldd命令并不是可执行程序,而只是shell脚本。readelf: 命令是一个有很多特性的实用程序,它让您能够解析和读取ELF 对象objdump:它展示了关于对象文件的信息;elf文件的各个section段nm:它列出来自对象文件(包括调试信
·
介绍几个在查看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区,具体可以通过第二列的类型来判断)
更多推荐
已为社区贡献1条内容
所有评论(0)