Durin is a library for reading and writing the Dwarf debugging format

https://news.ycombinator.com/rss Hits: 12
Summary

Durin Durin is a library for reading and writing the Dwarf debugging format. It aims to support: Reading DWARF 5 encoded information from ELF and MachO object files. Writing DWARF 5 information into ELF and MachO object files. Writing DWARF 5 information into assembly files. In future it could support DWARF 4 or newer versions of the DWARF standard. It should provide: Cross-platform: durin makes no assumptions about what kind of object file you're working with. Provide your own Buffer or use the object library. makes no assumptions about what kind of object file you're working with. Provide your own Buffer or use the library. Lazy: you can iterate compilation units without parsing their contents. Parse only as many debugging information entry (DIE) trees as you iterate over. durin also uses DW_AT_sibling references to avoid parsing a DIE's children to find it's next sibling where possible. Install To install durin as a dependency, run: $ opam install durin And add durin to your project's dune-project or *.opam files. Documentation Documentation on ocaml.org Example programs in example directory A simple .debug_info parser A simple .debug_line parser A dwarfdump clone An addr2line clone A small utility dwprod to list the compilers used to create each compilation unit within a shared library or executable (via DW_AT_producer ). A dwarf-valiate clone, a program to validate the integrity of some DWARF information and the references between sections and compilation units. directory Resources

First seen: 2025-12-01 19:51

Last seen: 2025-12-02 06:53