我正在尝试从aarch64主机调试QEMU中加载的QEMU内核。当执行用于从gdb加载符号的‘lx-符号’命令时,它已经显示
Undefined command: "lx-symbols"I已尝试执行‘自动加载安全路径’命令,如下所示
gdb-multiarch /mykernelbuild/linux/arch/arm64/boot/Image
gdb) target remote localhost:9000
Remote debugging using localhost:9000
warning: No executable has been specified and target does not support
determining executable automatically. Try using the "file" command.
add-auto-load-safe-path /mykernelbuild/linux/scripts/gdb仍然‘lx-符号’是返回错误。我已经尝试将它添加到‘~/..gdbint’中,并重新启动'gdb-multiarch‘。我也尝试过将文件名添加到路径中。
add-auto-load-safe-path /mykernelbuild/linux/scripts/gdb/vmlinux-gdb.py仍然没有成功,任何暗示都是非常感激的.
发布于 2022-11-05 00:26:44
gdb-multiarch /mykernelbuild/linux/arch/arm64/boot/Image
您正在调试Image,而不是vmlinux。因此GDB将尝试自动加载Image-gdb.py (在任何地方都找不到)。
我不知道boot/Image是什么,但是您可能想要调试boot/vmlinux。
更新:
add-auto-load-safe-path /mykernelbuild/linux/scripts/gdb
现在GDB抱怨/mykernelbuild/linux/scripts/gdb没有在auto-load-safe-path中(因为您还没有添加它)。
你想要这样的东西:
gdb-multiarch -ex 'add-auto-load-safe-path /mykernelbuild/linux/scripts/gdb' \
/mykernel/linux/vmlinuxhttps://stackoverflow.com/questions/74319123
复制相似问题