首页 > 编程知识 正文

readelf查看依赖库,关于回调函数的用法正确的是

时间:2023-05-04 02:42:37 阅读:18816 作者:2059

readelf命令用于显示一个或多个elf格式的目标文件的信息,并且可以选择控制显示哪些信息。 其中的elf-file(s )表示已检查的文件。 它支持32位、64位elf格式的文件和包含elf文件的文档。 这里通常指的是使用ar命令打包几个elf文件后生成的“静态库”文件,如lib*.a。

运行readelf时,必须指定一个-v和-H以外的选项。

ELF文件类型

ELF文件

可重定位文件:用户与其他目标文件一起创建可执行文件,或创建共享目标文件,如lib*.a文件。

可执行文件:用于生成进程映像,并将其加载到内存中执行。 例如,编译的可执行文件a.out。

共享目标文件:用于与其他共享目标文件或可重定位文件一起生成elf目标文件,或与可执行文件(如lib*.so文件)一起创建进程映像。

ELF文件作用

由于ELF文件涉及程序连接(生成程序)和程序运行,因此可以从多个角度查看ELF格式的文件。

用于编译和链接(可重定位文件)时,编译器和链接器将elf文件视为节标头表中描述的节的集合,程序标头表是可选的。

加载执行(可执行文件)时,加载器将elf文件视为程序头表中描述的段的集合。 一个段可能包含多个节,节标题表是可选的。

对于共享文件,这两者都包括在内。

ELF文件总体组成

elf文件标头描述了elf文件的总体信息。 包括系统相关、类型相关、加载相关、链接相关。

根据系统关联,elf文件标记的魔术数、硬件和平台等相关信息,提高了elf文件的可移植性,

允许交叉编译。

加载相关:包含有关程序头表的信息。

链接相关:节标题表相关信息。

参数

optionsdesdescription-aall显示所有信息,- h-l-s-s-r-d-v-a-I.- h-file-header是elf文件开头的文件头信息.-- 显示-t-Section-details部分的详细信息(-s中的)。 -s-syms -symbols (显示符号表段中的项目(如果有) )。 -e-headers显示所有标头信息,等效于: -h -l -S-n-notes显示note段(内核注释)的信息。 -r-Relocs显示可重新定位段的信息。 显示-u-unwindunwind段信息。 当前仅支持IA64 ELF的unwind分段信息。 - d动态显示动态段的信息。 -v-version-info显示版本段的信息。 -A-arch-specific显示CPU框架信息。 -D-use-dynamic使用动态段中的符号表而不是符号段来显示符号。 - I -如果histogram显示符号,则会显示bucket list长度的条形图。 -v-version显示自述文件的版本信息。 - hhelp显示readelf支持的命令行选项。 - w宽行输出。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。