linux readelf,Linux readelf命令使用

article/2025/11/6 8:20:54

readelf用来显示ELF格式目标文件的信息.可通过参数选项来控制显示哪些特定信息。

(注意: readelf不支持显示archive文档, 也不支持64位的ELF文件)。

使用方法1:

查看共享库的依赖库(NEEDED)和搜索名(SONAME)。

readelf -d

例如:

#readelf -d libuClibc-0.9.30rc2.so

Dynamic section at offset 0x90f50 contains 18 entries:

Tag Type Name/Value

0x00000001 (NEEDED) Shared library: [ld-uClibc.so.0]

0x0000000e (SONAME) Library soname: [libc.so.0]

......

使用方法2:

显示ELF头信息

readelf -h

例如:

#readelf -h libuClibc-0.9.30rc2.so

ELF Header:

Magic: 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00

Class: ELF32

Data: 2's complement, little endian

Version: 1 (current)

OS/ABI: UNIX - System V

ABI Version: 0

Type: DYN (Shared object file)

......

与objdump命令的区别

1) objdump使用了bfd库进行文件读取,而readelf则没有,另外写的一套代码,且对一些条件的判断并不是很严格。比如对于没有指定处理方式的CPU类型,BFD库将拒绝往下执行,readelf还是可以显示其内容。

2) readelf可以显示调试信息,而objdump则没有。但是实际上bfd库支持DWARF的处理,通过简单处理objdump也可以显示调试信息,就如同nm做的那样。0b1331709591d260c1c78e86d0c51c18.png


http://chatgpt.dhexx.cn/article/jkByLvvV.shtml

相关文章

Linux命令:readelf

1 需求 关键参数: -h/--file-header Display the ELF file header-l/--program-headers/--segments Display the program headers-S/--section-headers/--sections Display the sections header-s/--syms/--symbols Display the symbol table--dyn-sys…

readelf命令使用说明

0x1、概述 readelf命令,一般用于查看ELF格式的文件信息,常见的文件如在Linux上的可执行文件,动态库(*.so)或者静态库(*.a) 等包含ELF格式的文件。以下命令的使用是基于android编译出来的so文件上面去运行。 0x2、readelf常用命令 语法&…

readelf指令使用

一、指令说明 readelf命令,一般用于查看ELF格式的文件信息,常见的文件如在Linux上的可执行文件,动态库(*.so)或者静态库(*.a) 等包含ELF格式的文件。以下命令的使用是基于android编译出来的so文件上面去运行。 readelf常用命令 语法&#xff…

Mysql开发实践:error while loading shared libraries: libaio解决方案

摘要:Mysql出现问题:error while loading shared libraries: libaio解决方案。 本文分享自华为云社区《Mysql出现问题:error while loading shared libraries: libaio解决方案》,作者: 小虚竹。 问题 初始化数据库时…

fio: engine libaio not loadable

用测试工具fio,并且安装方式是源码编译安装。 tar xzf fio-fio-3.18.tar.gz && cd fio-fio-3.18 ./configure make make install编译安装完,想要测试顺序读、顺序写等时候,出现下面的报错: fio: engine libaio not loade…

libaio在mysql中的作用,ubuntu安裝mysql遇到的坑----解決Mysql報錯缺少libaio.so.1

最近學習大數據,涉及到hive的部分需要安裝mysql,於是就在linux環境下嘗試安裝,對於我這個linux小白來說,中間遇到很多坑爹問題,在這里做一個記錄。 前面安裝的過程照着博客一步步來,照貓畫虎,沒…

libaio源码安装_MySQL5.7.17 编译安装及二进制安装详解

MySQL 的安装方式有很多,最常见的就是编译安装和二进制安装; 在这里我将两种安装方式都介绍一下,自由选择; 首先我们来看一下编译安装的步骤: 首先,到官方网站中下载源码包; Download MySQL Community Server 选择下载源码包: 有很多针对不同系统的源码包,我们选择通用…

linux 提示libaio.so.1,解决Mysql报错缺少libaio.so.1

解决Mysql报错缺少libaio.so.1 报错如上图,需要安装libaio.so.1 64位系统安装: wget http://mirror.centos.org/centos/6/os/x86_64/Packages/libaio-0.3.107-10.el6.x86_64.rpm rpm -ivh libaio-0.3.107-10.el6.x86_64.rpm 32位系统现在很少了,yum似乎默认安装32位的: yum…

libaio介绍和使用

libaio介绍 The Linux-native asynchronous I/O facility ("async I/O", or "aio") has a richer API and capability set than the simple POSIX async I/O facility. This library, libaio, provides the Linux-native API for async I/O. The POSIX as…

安装mysql-community-server报错缺少libaio依赖

一、遇到问题 安装mysql-community-common、mysql-community-libs、mysql-community-client都没有问题,但是安装myql-community-server就报错,缺少libaio依赖 二、解决问题 执行命令:yum -y install libaio 执行命令:rpm -ivh…

linux libaio介绍

Linux的I/O机制经历了一下几个阶段的演进: 1. 同步阻塞I/O: 用户进程进行I/O操作,一直阻塞到I/O操作完成为止。 2. 同步非阻塞I/O: 用户程序可以通过设置文件描述符的属性O_NONBLOCK,I/O操作可以立即返回,但是并不保证I/O操作成功…

Linux开发之libaio源码分析及应用

1. 简介 Linux的POSIX API由glibc提供,2000年年之前,glibc一直没有提供异步I/O的调用API。Red Hat公司基于Linux内核的符号表封装了一套异步I/O(简称aio)的接口,并提供了一些新的接口用来简化上下文配置,开成一个库,命…

HC-SR501人体红外感应电子模块

1)理解两种触发方式:可重复触发和不可重复触发 2)学会调节两个属性:延迟调节和灵敏度调节 (在不同触发方式下,大家要自己调自己的设备,不同延迟反应快速性不同,不同灵敏度感应的范围…

人体红外传感器简明教程

学习物联网,来HaaSEDU就对了 人体红外热释电运动传感器 一、产品简介 热释电红外运动传感器能检测运动的人或动物身上发出的红外线,输出开关信号,可以应用于各种需要检测运动人体的场合。传统的热释电红外传感器需要人体热释电红外探头、专…

基于STM32F0实现人体红外传感器

​​​​​​目的 了解人体红外传感器 HC-SR501 的驱动原理和STM32F030的中断机制,通过配置 STM32F030 芯片 GPIO 相关寄存器和外部触发中断实现人体红外传感器检测人体。 原理 中断是指当CPU执行程序时,由于发生了某种随机的事件(外部或内…

Arduino Uno 使用 人体红外传感器(HC_SR051)实现 人体感应灯

“登”,亮了., 每当我游走在图书馆书架之间就会有这样的一个情景。 这次实验使用的模块是人体红外传感器(HC_SR051),配上Arduino Uno 实现人体感应灯的实现。 先看看这模块(点击查看大图) 实验效…

HC-SR501 人体红外感应模块 单片机

https://blog.csdn.net/zy19981110/article/details/89947118?ops_request_misc%257B%2522request%255Fid%2522%253A%2522161616067916780357245177%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id161616067916780357245177&biz_id0&…

HC-SR501人体红外传感器

了解人体红外传感器HC-SR501的驱动原理,通过配置STM32F030芯片GPIO相关寄存器,让人体红外传感器识别到人体时使蜂鸣器响起的基础实验。 1、HC-SR501是基于红外线HC-SR501是基于红外线技术的自动控制模块 ,采用德国原装进口LHI778 探头设计&a…

基于STM32的红外人体感应器控制LED灯的状态

文章目录 一、红外人体感应器的介绍二、利用红外人体感应器实现控制LED灯三、总结 一、红外人体感应器的介绍 产品参数 产品特点 ①全自动感应 当人进入其感应范围则输出高电平,人离开感应范围则自动延时关闭高电平,输出低电平。 ②光敏控制 (可选&…

人体红外线传感器

基于Arduino的人体红外线传感器 目的: 1.红外线模组与arduino结合,利用当有人进入感应范围内则输入高电平,人离开感应范围则自动关闭高电平,输出低电平的原理,采集到人身体上的红外信号,显示于 PC 串行端口监控窗口和…