Elf Excavator is a Graphical ELF file inspector. It is primarily intended to assist embedded developers deciper the contents of their elf files, such as determining what symbols and sections are taking up the most space, what assembly was generated for a function, and searching/inspecting section contents:
Section searching uses decimal integers, floating point numbers, UTF-8 strings, or raw hexadecimal bytes:
Each column can be filtered. Text is filtered using regular expressions, and numbers
are filtered using simple expressions in the form of <comparator> <value>
, where
<comparator>
is >,>=,<,<=,==,!=
, and value is a decimal or hexadecimal integer.
If no comparator is supplied, ==
is assumed. Invalid filter terms will be outlined in
red.
The lovely pickaxe icon was created by wanicon from flaticon.com.
Elf Excavator can be launched using the following:
elfexcavator "<path-to-elf>"
This guide assumes an ubuntu system.
To build Elf Excavator, you will need the dependencies in tools/scripts/setup.sh
.
NOTE: This project requires
cmake>=20
. ubuntu<22.04 does not provide this inapt
. Consider usingpip
,snap
, or Kitware's download.
cmake --preset=install
cmake --build --preset=install
# Either install directly
sudo cmake --build --preset=install --target install
# Or use the .deb package generator, use "dpkg -c *.deb; dpkg -I *.deb" to inspect contents
pushd build/install && cpack -G DEB; popd