Команда GDB: lx-символы undefined
Я следую приведенному ниже руководству:
https://www.kernel.org/doc/Documentation/gdb-kernel-debugging.txt
Когда я пытаюсь загрузить символы модуля, используя следующую команду:
(gdb) lx-символы
gdb говорит, что команда undefined. Как добавить эту вспомогательную команду в gdb?
gdb info: gdb-7.6.1-51.el7.x86-64 на Centos 7.0
Ответы
Ответ 1
Вы должны получить последние версии ядра (может быть 4.0-rc4) или сделать бэкпорт патча. По сути, посмотрите, есть ли в ваших исходниках ядра каталог script/gdb/
подобный этому. Потому что именно здесь вы получаете эти сценарии.
Затем вы выполните действия, указанные в https://www.kernel.org/doc/Documentation/dev-tools/gdb-kernel-debugging.rst.
Ответ 2
add-auto-load-safe-path
Использование:
gdb -ex add-auto-load-safe-path /path/to/linux/kernel/source/root
Теперь сценарии GDB автоматически загружаются и lx-symbols
доступен.
Вот минимально полностью автоматизированный пример Buildroot + QEMU с подробными инструкциями.