Debuginfod (Русский)
Debuginfod — это служба, предоставляющая отладочную информацию через HTTP API.
Установка
gdb автоматически пытается скачать файлы отладки, если есть переменная окружения DEBUGINFOD_URLS
, так что установка дополнительных пакетов не требуется.
По желанию вы можете установить пакет debuginfod, который автоматически добавляет DEBUGINFOD_URLS
в окружение при входе и предоставляет утилиту debuginfod-find(1). Этот пакет необходим для поддержки debuginfod в delve.
Использование
Если пакет debuginfod не установлен или вы хотите задать свой URL, установите переменную окружения, которая подскажет инструментам отладки, откуда скачивать отладочные символы:
DEBUGINFOD_URLS="https://debuginfod.archlinux.org/"
Ещё можно использовать https://debuginfod.elfutils.org/
, который работает как федеративный сервер и опрашивает все подключенные к нему серверы debuginfod.
После этого инструменты отладки смогут скачивать отладочные символы без установки debug-пакетов.
$ 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)
Смотрите также debuginfod-find(1).
Поддержка отладчиками
Некоторые отладчики умеют использовать debuginfod для получения отладочных символов и просмотра исходного кода.
Пакет | Статус | Примечания |
---|---|---|
gdb | Поддерживает | |
delve | Частично поддерживает | Поддерживает отладочные символы, не поддерживает просмотр кода |
KDE Crash Report | Поддерживает |