Does gdb debuginfod download libc etc.?

Paul Smith via Gdb
2026-03-07T23:59:04Z

I'm trying to start using debuginfod support in my environment. I've
started my own debuginfod server and I've added lots of historical
binaries and shared libraries that I get core files from.

In that past I've asked users to package up all their system libraries
such as libc.so, libm.so, libpthread.so, the runtime linker ld-linux.so
etc. and send them along with their core file. Then I run GDB like:
gdb -iex 'set sysroot xxx' -c core exe

What I was hoping to do is to run "gdb -c core" and have debuginfod get
everything I need without having to ask users to send anything
(assuming I've already got the libraries, which I usually do). But, it
doesn't seem to be working.

I've used debuginfod-find to verify that all the libraries referenced
by the core file do exist on the server (via their build ID).

When I run "gdb -c core" it DOES correctly download the executable
file, so I know that GDB's debuginfod configuration is working. It
also appears to download linux-vdso.so.1.

However, none of my other libraries are being loaded, even if I use bt
or whatever to look at the backtrace. Without libc for example, none
of the threads which were in the C runtime when the core was taken can
be traced and I just get "?? ()" for every frame. If I use "info
sharedlib" I see all the .so paths are the local system versions of
these libraries, and they have a "Syms Read" value of "No".

Is there something else I need to do to get this working?

Or am I just misunderstanding how debuginfod support works?