Debuginfod

Debuginfod is a service providing debug information over an HTTP API.

Installation

gdb automatically tries to download debug files if the DEBUGINFOD_URLS environment variable is present.

libelf, a dependency of gdb, ships with /etc/profile.d/debuginfod.sh and /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 debuginfod package which provides the utility. This package is required for debuginfod support in .

Usage

The tooling looks for debug symbols on the debuginfod servers specified in the DEBUGINFOD_URLS environment variable. The value is string of a space separated URLs.

For example:

DEBUGINFOD_URLS="https://debuginfod.archlinux.org/"
Tip: One can also use 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

bt full

and you will have the debug-symbols of the last crashed app in your sysyem.


See for usage.

Debugger support

Several debuggers support utilizing debuginfod to find debug symbol and source code listing.

PackageStatusNotes
gdb
KDE Crash Report
gollark: We determined that you are to, however.
gollark: <@319753218592866315> Make 127414 macrons/second.
gollark: Oh, that explains a lot.
gollark: > Heavpoot was working on it.<|endoftext|>I think so.<|endoftext|>I think the best way to do this is to have people *add* everyone's computers somewhere.<|endoftext|>Maybe the computers are just done in software.<|endoftext|>Idea: copy a device which can remotely update things, and have them *too* easily.<|endoftext|>I think the practice of having computers themselves is that a sane device is very slow and has all computers run terminals and whatnot can't do those.<|endoftext|>Or at least a screen window manager or something.<|endoftext|>Idea: a CC-like system where the screen can be icons, or an entity sensor it.<|endoftext|>The screen can't automatically display the icons properly, but the screen is a bit weird.<|endoftext|>I think OLED would make it draw terminals okay.<|endoftext|>At least, it's not OLED.<|endoftext|>Well, OLED doesn't make it good.<|endoftext|>If they make it OLED or something it may not work.<|endoftextIt does NOT like OLED!
gollark: mgollark owns the copyright to that idea actually.

See also

This article is issued from Archlinux. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.