我正在开发一个用汇编编写并在 qemu 模拟器上运行的玩具引导加载程序/内核。我可以使用选项运行 qemu-s -S
并使用远程目标使用 gdb 进行调试,但是我没有使用 gdb 加载任何调试符号。如何从我的程序集中生成符号文件?
我正在使用 nasm 为 qemu 从我的程序集文件中运行生成二进制图像,但是我还没有发现在图像本身中包含调试信息(我不确定这是否有意义)。我还发现 gdb 允许您加载单独的符号文件进行调试,所以现在我的问题是如何从我的汇编代码生成符号文件。
我已经看到了使用的建议objcopy
,但我相信它只适用于 elf 文件,而不是二进制文件。我已经尝试让 nasm 生成一个精灵,但由于我org
在程序集文件中的(必要的)指令,它一直在抱怨。