Debug Symbols: Difference between revisions

imported>Symphorien
mention nixseparatedebuginfod
imported>Symphorien
gdb is now built with debuginfod support.
Line 132: Line 132:


==== nixseparatedebuginfo ====
==== nixseparatedebuginfo ====
[https://github.com/symphorien/nixseparatedebuginfod nixseparatedebuginfod] is a debuginfod server that can download the relevant debug outputs and source files as needed by debuginfod-capable tools. Compared to dwarffs, it does not require root access, and handles debug outputs of derivations not built by hydra (eg locally or on a custom binary cache) and source files. As of NixOS 22.11, only hotspot is built with debuginfod support by default, and notably not gdb so instead of installing <code>gdb</code> in <code>/etc/nixos/configuration.nix</code>, you should install <code>(gdb.override { enableDebuginfod = true })</code>.
[https://github.com/symphorien/nixseparatedebuginfod nixseparatedebuginfod] is a debuginfod server that can download the relevant debug outputs and source files as needed by debuginfod-capable tools. Compared to dwarffs, it does not require root access, and handles debug outputs of derivations not built by hydra (eg locally or on a custom binary cache) and source files. Since NixOS 23.05, gdb is built with support for debuginfod, and valgrind has support if you additionally install the bin output of elfutils. On earlier releases, support must be overridden by hand, for example instead of installing <code>gdb</code> in <code>/etc/nixos/configuration.nix</code>, you should install <code>(gdb.override { enableDebuginfod = true })</code>.