【问题标题】:How to load debug symbols for the whole OVMF UEFI image in gdb?如何在 gdb 中加载整个 OVMF UEFI 映像的调试符号?
【发布时间】:2019-12-22 17:28:11
【问题描述】:

我正在尝试通过 gdb 调试 UEFI 固件 (OVMF) 中的驱动程序,如下所述:

https://github.com/tianocore/tianocore.github.io/wiki/How-to-debug-OVMF-with-QEMU-using-GDB

它运行良好,但我发现仅仅为我的驱动程序提供调试符号是不够的。我还需要整个 OVMF 图像的调试符号才能正确查看发生了什么。使用edk2构建OVMF后,我有很多.debug文件,但我不明白我需要将哪些文件加载​​到gdb中,以及我应该使用哪些地址。

【问题讨论】:

    标签: debugging gdb qemu uefi edk2


    【解决方案1】:

    我找到了一些涉及DebugPkg 的说明,但无论如何我都无法使gdb_uefi.py 工作。总是找不到EFI_SYSTEM_TABLE_POINTER

    最后,我最终编写了自己的脚本,该脚本实现了 gdb 命令,该命令确实成功地加载了所有调试符号。这可能是一个更糟糕的解决方案,因为它需要设置:执行加载时必须存在带有驱动程序地址的“debug.log”,因此您需要首先运行 QEMU 至少一次。但是,这对我来说已经足够了。

    我的脚本可以在这里找到:

    https://github.com/artem-nefedov/uefi-gdb

    【讨论】:

      猜你喜欢
      • 2016-07-22
      • 2016-10-18
      • 2015-07-28
      • 2015-10-24
      • 2013-12-21
      • 1970-01-01
      • 2023-03-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多