.a .so .bin 文件格式分析--文件格式是32位还是64位,数据是大端还是小端,运行在 arm 上还是 x86上

可通过readelf指令,分析文.a .so .bin 文件是在什么系统上编译的,文件格式是32位还是64位,数据是大端还是小端,运行在 arm 上还是 x86上

1:格式读取说明

通过 readelf -a libbrd.a 读取文件的格式内容

bash 复制代码
File: libbrd.a(brd_audio.o)
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:                              REL (Relocatable file)
  Machine:                           ARM
  Version:                           0x1
  Entry point address:               0x0
  Start of program headers:          0 (bytes into file)
  Start of section headers:          10924 (bytes into file)
  Flags:                             0x5000000, Version5 EABI
  Size of this header:               52 (bytes)
  Size of program headers:           0 (bytes)
  Number of program headers:         0
  Size of section headers:           40 (bytes)
  Number of section headers:         22
  Section header string table index: 21

2:关键内容说明

2.1 Class

ELF32:说明该文件格式是32位系统格式

2.2 Data

2's complement, little endian:说明数据格式位为小端

2.3 Machine

ARM:说明当前文件运行在 arm架构 的系统上

相关推荐
szxinmai主板定制专家1 小时前
基于x86和ARM的EtherCAT运动控制器,最大支持32轴,支持codesys和实时系统优化
arm开发·人工智能·嵌入式硬件·yolo
凤凰战士芭比Q3 小时前
Linux内核(升级、编译)
linux·运维·arm开发
nuoxin1142 天前
GSV1011-富利威-HDMI芯片选型
arm开发·驱动开发·fpga开发·ffmpeg·射频工程
磨十三5 天前
MCU 时钟系统全解析:主时钟、PLL、分频与外设时钟门控
arm开发·单片机·嵌入式硬件
磨十三5 天前
ARM Cortex-M 系列 MCU:内核、指令、异常与中断解析
arm开发·单片机·嵌入式硬件
Leinwin5 天前
微软发布全新一代 Arm 架构云原生处理器 Cobalt 200
arm开发·microsoft·架构
卖芒果的潇洒农民5 天前
Work ARM CPU
arm开发
虚伪的空想家6 天前
arm架构服务器使用kvm创建虚机报错,romfile “efi-virtio.rom“ is empty
linux·运维·服务器·javascript·arm开发·云原生·kvm
明月清了个风6 天前
工作笔记-----EEPROM偶发性读取错误
arm开发·笔记·单片机·嵌入式硬件
大侠课堂6 天前
单片机经典面试题50道
arm开发·单片机·嵌入式硬件·mongodb