This package browser is in early development. Mind the rough edges.

dwarves

Debugging information processing library and utilities

Dwarves is a set of tools that use the debugging information inserted in ELF binaries by compilers such as GCC, used by well known debuggers such as GDB.

Utilities in the Dwarves suite include pahole, that can be used to find alignment holes in structures and classes in languages such as C, C++, but not limited to these. These tools can also be used to encode and read the BTF type information format used with the kernel Linux bpf syscall.

The codiff command can be used to compare the effects changes in source code generate on the resulting binaries.

The pfunct command can be used to find all sorts of information about functions, inlines, decisions made by the compiler about inlining, etc.

The pahole command can be used to use all this type information to pretty print raw data according to command line directions.

Headers can have its data format described from debugging info and offsets from it can be used to further format a number of records.

Finally, the btfdiff command can be used to compare the output of pahole from BTF and DWARF, to make sure they produce the same results.

Installation

Install the latest version of dwarves as follows:

guix install dwarves

Or install a particular version:

guix install dwarves@1.29

You can also install packages in augmented, pure or containerized environments for development or simply to try them out without polluting your user profile. See the guix shell documentation for more information.

Badge code

You can use the following badge to inform users of dwarves about the latest version available in Guix.

Example HTML:

<a href='https://packages.guix.gnu.org/packages/dwarves'><img src='https://packages.guix.gnu.org/packages/dwarves/badges/latest-version.svg' alt='Version in GNU Guix'></a>

Example Markdown:

[![Version in GNU Guix](https://packages.guix.gnu.org/packages/dwarves/badges/latest-version.svg)](https://packages.guix.gnu.org/packages/dwarves)

Example Org:

[[https://packages.guix.gnu.org/packages/dwarves][https://packages.guix.gnu.org/packages/dwarves/badges/latest-version.svg]]