Re: Does gdb debuginfod download libc etc.?
Paul Smith via Gdb <[email protected]> Mon, 09 Mar 2026 16:32:28 -0400
| Newsgroups | gmane.comp.gdb.devel |
|---|---|
| Organization | GNU's Not UNIX! |
| Message-ID | <[email protected]> |
On Mon, 2026-03-09 at 16:57 +0000, Andrew Burgess wrote: > Unfortunately, there's no debug flag which reports on GDB as it > parses the build-ids from the core file. But the patch below which > applies to gdb-17-branch adds a new 'set debug core-load on' command, > with this you should be able to: > > (gdb) set debug core-load on > (gdb) core-file ~/core.54313 > [core-load] build_file_mappings: enter > [core-load] operator(): start = 0x400000, end = 0x407000, > filename = /some/program, build-id = > a004xxxx178xxxx78xxxx6c6cxxxx800df88xxxx > [core-load] operator(): start = 0x407000, end = 0x41e000, > filename = /some/program, build-id = NONE > [core-load] operator(): start = 0x41e000, end = 0x427000, > filename = /some/program, build-id = NONE > [core-load] operator(): start = 0x428000, end = 0x429000, > filename = /some/program, build-id = NONE Ah, this is very useful. Unfortunately it leads me to this discovery; the only output I get from this is: (gdb) core-file /data/psh13/tmp/core [core-load] build_file_mappings: enter [core-load] build_file_mappings: exit Apparently the executable is handled separately, since that is looked up immediately afterwards (when setting DEBUGINFOD_VERBOSE=9): > debuginfod_find_executable f87c1d8cd2118209ef2350b22b187a64d705d6cd > server urls "http://debuginfod:8002" > checking build-id > checking cache dir /home/pds/.cache/debuginfod_client > found > /home/pds/.cache/debuginfod_client/f87c1d8cd2118209ef2350b22b187a64d7 > 05d6cd/hdr-executable (bytes=55) > found > /home/pds/.cache/debuginfod_client/f87c1d8cd2118209ef2350b22b187a64d7 > 05d6cd/executable (fd=14) > Reading symbols from > /home/pds/.cache/debuginfod_client/f87c1d8cd2118209ef2350b22b187a64d7 > 05d6cd/executable... However, this is very good info, I will proceed to try to figure out why eu-unstrip etc. can find the build ID values, but GDB cannot.