Документы GDB говорят, что каталог компиляции может быть записан в исполняемый файл https://sourceware.org/gdb/current/onlinedocs/gdb/Source-Path.html
Исполняемые программы иногда не записывают каталоги исходных файлов, из которых они были составлены только имена. Даже в этом случае каталоги можно перемещать между компиляцией и сеансом отладки.
Предполагая, что исполняемый файл записывает каталог компиляции. Как распечатать каталог компиляции?
Вроде так:
cd /tmp gcc -g t.c readelf -Wwi a.out | grep DW_AT_comp_dir <15> DW_AT_comp_dir : (indirect string, offset: 0x2ab): /tmp