Export to GitHub

aski-m - ElfUtils.wiki


Introduction

Elf utils aims at providing replacement for binutils for elf backend alone using elf(3) and gelf(3) API.

NOTE: Work has moved to FreeBSD Perforce Server. Track changes at perforce.freebsd.org in //depot/user/samarunraj

Tools

  • elf-size

    elf-size utility lists the section sizes and the total size for elf object or archive files for different OS and architecture, core dumps in elf are also supported.

Tested on the following platforms & architectures: |OS|Architecture|Elf Objects|AR Objects|Core dumps| |:-|:-----------|:----------|:---------|:---------| |Linux|x86 |Y |Y |Y | |Linux|x86-64 |Y |Y |Y | |Linux|ARM |Y |Y |Y | |Linux|MIPS32 |Y |Y |Y | |Linux|MIPSel32 |Y |Y |Y | |FreeBSD|x86 |Y |Y |Y | |FreBSD|x86-64 |Y |Y |Y | |FreBSD|Sparc64 |Y |Y |Y |

Source: size.c Source: size-gen.c

  • elf-nm - Work in Progress.

    elf-nm utility lists the symbols from elf object files.

Source: elf-nm.c

  • elfdump - Work in Progress

    A rewrite of FreeBSD elfdump utility using elf(3) and gelf(3) API.

Status: Currently dumps * elf header * section headers * program headers * interpreter * dynamic section * symbol table * note entries (including PT_NOTE and SHT_NOTE entries), also prints the minimum linux kernel version needed from .note.ABI-tag note entries. * relocation table (but output is slightly different from the original elfdump)

TODO:

GOT, Hash (The original elfdump in freebsd, dosen't have this part implemented)

Source: elfdump.c

  • elf-strip
  • elf-ld
  • elf-ar
  • readelf
  • elf-strings
  • elf-cmp
  • elf-sign