我正在用 nasm 编写汇编级别的人类可说编程语言。我注意到 Dwarf 调试是开发它的重要组成部分。
为了让它以后成为自托管,不仅要编译为 ELF,还要支持 Dwarf 以使调试可行。对于 ELF,有一个很好的 nasm 示例,说明如何制作 ELF 标头 http://www.muppetlabs.com/~breadbox/software/tiny/teensy.html http://blog.markloiseau.com/2012/05/tiny -64 位精灵可执行文件/
我想知道是否有或什至可以为 DWARF 制作类似的东西,一个示例 hello world,其中包括与 gdb 一起使用所需的 DWARF 部分。有了这样一个例子,理解 DWARF 会容易得多,而不是通过主要指 C 的相当神秘的文档。我发现最接近的是 IBM 的指南,它有一个小程序,可以让你有选择地在每个功能基础 www.ibm.com/developerworks/library/os-debugging/
无论如何,如果您碰巧能够制作一个 nasm hello world dwarf 示例,我相信全世界都会非常欣赏它,因为它会使 dwarf 格式更易于访问。也许有人甚至可以在 fasm 或除 nasm 之外的其他汇编程序中实现它。