Chapter 5. elfutils
elfutils is a collection of various binary tools, such as eu-objdump
, eu-readelf
, and other utilities that allow you to inspect and manipulate ELF files. See Table 5.1, “Tools Included in elfutils for Red Hat Developer Toolset” for a complete list of binary tools that are distributed with the Red Hat Developer Toolset version of elfutils.
Red Hat Developer Toolset is distributed with elfutils 0.176. This version is more recent than the version included the previous release of Red Hat Developer Toolset and provides some bug fixes and enhancements.
Name | Description |
---|---|
| Translates addresses into file names and line numbers. |
| Creates, modifies, and extracts files from archives. |
| Compares relevant parts of two ELF files for equality. |
| Verifies that ELF files are compliant with the generic ABI (gABI) and processor-specific supplement ABI (psABI) specification. |
| Locates the source of text relocations in files. |
| Creates an offline archive for debugging. |
| Lists symbols from object files. |
| Displays information from object files. |
| Generates an index to the contents of an archive to make access to this archive faster. |
| Displays information about ELF files. |
| Lists section sizes of object or archive files. |
| A new utility for unwinding processes and cores. |
| Displays printable character sequences in files. |
| Discards all symbols from object files. |
| Combines stripped files with separate symbols and debug information. |
5.1. Installing elfutils
In Red Hat Developer Toolset, elfutils is provided by the devtoolset-9-elfutils package and is automatically installed with devtoolset-9-toolchain as described in Section 1.5, “Installing Red Hat Developer Toolset”.
5.2. Using elfutils
To execute any of the tools that are part of elfutils, run the tool as follows:
$ scl enable devtoolset-9 'tool option ... file_name'
See Table 5.1, “Tools Included in elfutils for Red Hat Developer Toolset” for a list of tools that are distributed with elfutils. For example, to use the eu-objdump
tool to inspect an object file:
$ scl enable devtoolset-9 'eu-objdump option ... object_file'
Note that you can execute any command using the scl
utility, causing it to be run with the Red Hat Developer Toolset binaries used in preference to the Red Hat Enterprise Linux system equivalent. This allows you to run a shell session with Red Hat Developer Toolset binary tools as default:
$ scl enable devtoolset-9 'bash'
To verify the version of elfutils you are using at any point:
$ which eu-objdump
Red Hat Developer Toolset’s eu-objdump
executable path will begin with /opt
. Alternatively, you can use the following command to confirm that the version number matches that for Red Hat Developer Toolset eu-objdump
:
$ eu-objdump -V
5.3. Additional Resources
For more information about elfutils, see the resources listed below.
See Also
- Chapter 1, Red Hat Developer Toolset — An overview of Red Hat Developer Toolset and more information on how to install it on your system.
- Chapter 2, GNU Compiler Collection (GCC) — Instructions on compiling programs written in C, C++, and Fortran.
- Chapter 4, binutils — Instructions on using binutils, a collection of binary tools to inspect and manipulate object files and binaries.
- Chapter 6, dwz — Instructions on using the dwz tool to optimize DWARF debugging information contained in ELF shared libraries and ELF executables for size.