debuginfod is pretty nice, since it allows you to debug a core file generated on one system on another, without worrying about debug information, so long as you point your debuginfod settings in the right direction. However, will it work for libthread_db.so? If not, then this breaks down if the two systems use different libc versions that have incompatible libthread_db.so. (tangent: is it possible to express libthread_db.so code as DWARF expressions? if so it will be possible to get rid of libthread_db.so, by having libc encode accessors to thread information as some DWARF expressions, and teaching gdb to use those expressions instead of calling libthread_db.so)