在一个程序编译结束后,会生成****.o
的文件,但往往当我们用vim命令查看这个文件内容时,就全是乱码,
像这样:
那么我们应该如何查看***.o
文件呢?
objdump和readelf的使用
objdump
首先先让我们了解一下什么是odjdump?
作用:查看目标文件文件(如.o,.so,可执行文件等)的相关信息或构成。
使用:objdump [参数] filename
关于这一命令各种选项的含义请看:
objdump的使用
.data数据 :初始化不为0的数据
.bss数据 : 未初始化或初始化为0
可执行文件的ELF格式:
readelf
readelf命令,一般用于查看ELF格式的文件信息,常见的文件如在Linux上的可执行文件,动态库(.so)或者静态库(.a) 等包含ELF格式的文件。以下命令的使用是基于android编译出来的so文件上面去运行。
关于这一命令各种选项的含义请看:
readelf的使用