I'm trying to diagnose why renderdoccmd
is crashing after a default install of 22.10. I installed renderdoc with apt install renderdoc
, and then running renderdoccmd
immediately segfaults.
So I whip out gdb,
env DEBUGINFOD_VERBOSE=1 gdb /usr/bin/renderdoccmd
GDB asks me if I want it to automatically download debuginfo,
This GDB supports auto-downloading debuginfo from the following URLs:
https://debuginfod.ubuntu.com
Enable debuginfod for this session? (y or [n])
I say yes, then the program runs until a segfault, and I get,
Program received signal SIGSEGV, Segmentation fault.
rdcstr::assign (in=..., this=0x7fffffffda20) at ./renderdoc/api/replay/rdcstr.h:133
debuginfod_find_source fa6c0c73af182ab7382960496eef0d2f8786facf ./obj-x86_64-linux-gnu/./renderdoc/api/replay/rdcstr.h
server urls "https://debuginfod.ubuntu.com "
checking build-id
checking filename
not found Invalid argument (err=-22)
Download failed: Invalid argument. Continuing without source file ./obj-x86_64-linux-gnu/./renderdoc/api/replay/rdcstr.h.
133 ./renderdoc/api/replay/rdcstr.h: No such file or directory.
Cutting a small piece from the above,
checking filename
not found Invalid argument (err=-22)
No explanation what that not found Invalid argument
reference is to. It's struggling to find the source code is seems. Can that be pulled from the debuginfod server? Shouldn't this be more automatic? Or must the Ubuntu user download that separately with apt-get source
for example?
Typing
(gdb) list 20
debuginfod_find_source 52c495834c7ec4640ea1ede6b2a5a6516fad5a59 ./obj-x86_64-linux-gnu/renderdoc/api/replay/rdcstr.h
server urls "https://debuginfod.ubuntu.com "
checking build-id
checking filename
not found Invalid argument (err=-22)
Download failed: Invalid argument. Continuing without source file ./obj-x86_64-linux-gnu/renderdoc/api/replay/rdcstr.h.
debuginfod_find_source 52c495834c7ec4640ea1ede6b2a5a6516fad5a59 ./obj-x86_64-linux-gnu/renderdoc/api/replay/rdcstr.h
... endless repetition ...
I'm sure what is at fault here. Ubuntu's debuginfod instance, the client, the packaging in Ubuntu.
As it stands, I don't see how I can further diagnose this crash.