Вы также должны указать GDB, где находятся исходные файлы. Это означает, что вам также нужны исходные файлы, а не только символы отладки.
Важно, чтобы загружаемые вами источники были именно теми, которые использовались для компиляции библиотеки, потому что информация об отладке содержит только имя файла и номер строки. Если вы дадите gdb файл, в котором номера строк не соответствуют (например, другой версии), исходные строки, напечатанные gdb, будут очень запутанными. Нет никакого способа узнать, что они не правы. Вы должны иметь возможность использовать deb sr c с тем же номером версии, что и библиотеки debs.
Получив исходные файлы, скажите gdb, где их искать с помощью
directory /path/to/source/files
Вы можете указать несколько путей. Прочитайте help directory
внутри gdb.
Поскольку вам придется делать это часто, поместите эту строку в файл gdbinit . Возможно, вы захотите использовать .gdbinit
в вашем текущем каталоге, но .gdbinit
в вашем домашнем каталоге также может быть возможным. Gdb использует оба.
Если вы работаете с библиотекой, чей источник распространяется по дереву подкаталогов, вам может быть полезно установить путь замены:
set substitute-path /your/file/path /original/file/path
Опять же, больше Помощь доступна с help set substitute-path
.