Debuginfod is a service providing debug information over an HTTP API.
automatically tries to download debug files if the
DEBUGINFOD_URLS environment variable is present.
, a dependency of , ships with
/etc/profile.d/debuginfod.csh scripts that set the variable on login, so there is no need to install additional packages.
You can optionally install the package which provides the utility. This package is required for debuginfod support in .
The tooling looks for debug symbols on the debuginfod servers specified in the
DEBUGINFOD_URLS environment variable. The value is a string of a space separated URLs.
https://debuginfod.elfutils.org/ which works as a federated server and queries all available debuginfod servers.
Now a debugger can fetch debug symbols without having to install the appropriate debug package.
$ gdb /usr/bin/i3
[...] Reading symbols from /usr/bin/i3... Downloading 1.56 MB separate debug info for /usr/bin/i3 Reading symbols from /home/user/.cache/debuginfod_client/29129d26dbe557d2b56daf90327f64f527304dc1/debuginfo... (gdb)
You can also do for example:
# coredumpctl gdb
And then inside gdb:
and you will have the debug-symbols of the last crashed app in your system.
Several debuggers support utilizing debuginfod to find debug symbol and source code listing.
|KDE Crash Report