This is on Fedora 34 with elfutils-debuginfod-client-0.183-1.fc34.x86_64 In light of the bug #1970312 I wanted to be proactive and updated my .bashrc with: export DEBUGINFOD_URLS= (it's an empty string), as indicated at [1]. Now, when I run gdb with some project, it claims: Download failed: Function not implemented. Continuing without debug info for /lib64/ld-linux-x86-64.so.2. Download failed: Function not implemented. Continuing without debug info for /data/develop/local/evolution-data-server/system-supplied DSO at 0x7ffff7fc9000. Download failed: Function not implemented. Continuing without debug info for /lib64/libc.so.6. Download failed: Function not implemented. Continuing without debug info for /lib64/libpthread.so.0. ..... there are like 50+ lines with various libraries listed. I thought, when I set the URLS to an empty value, it'll be the same as when it's not set. When I `unset DEBUGINFOD_URLS`, then the messages from gdb are gone. The [1] is not clear how to opt out, it should ideally provide a command, rather than vague description. I also believe the debuginfod should distinguish between existing & filled and existing & empty environment variable. [1] https://fedoraproject.org/wiki/Changes/DebuginfodByDefault
I think this is a GDB bug. GDB is trying to be helpful by reporting the ENOSYS from debuginfod_find_debuginfo. But that simply means DEBUGINFOD_URLS isn't set (or empty) as stated in debuginfod_find_debuginfo (3) under ERRORS ENOSYS $DEBUGINFOD_URLS is not defined.
This issue was already fixed in upstream. We are now finishing work on backporting it to fedora 34
Closing this bug as GDB 11.1 has just been released for fedora 34, with the fix