5 ms·
However, note that the libelfin library that the author uses is pretty much unmaintained. I am not sure what would be the right way to parse ELF and DWARF? li
by HexDecOctBin 3y ago
However, note that the libelfin library that the author uses is pretty much unmaintained.
I am not sure what would be the right way to parse ELF and DWARF? libelf/libdwarf, libdw, or something else?
Also, since you are probably in the know, is liblldb "extensible", in the sense that can liblldb can be used as a foundation of a new debugger with experimental features added on top of it?
- msla 3y agolibbfd is apparently what the GNU debugger uses: https://ftp.gnu.org/old-gnu/Manuals/bfd-2.9.1/html_chapter/bfd_1.html https://ftp.gnu.org/old-gnu/Manuals/bfd-2.9.1/html_chapter/b... https://en.wikipedia.org/wiki/Binary_File_Descriptor_library https://en.wikipedia.org/wiki/Binary_File_Descriptor_library
- tromey 3y agogdb uses BFD for object file access but has its own DWARF reader.
- chc4 3y agoThe Rust goblin and gimli crates are very good, I've used them for ELF symbol resolution things before and they're a dream compared to libelf.
- jcranmer 3y agogimli works well enough for actually parsing the DWARF format, but it abstracts over somewhat less than what you would hope (in particular, you get to do all the fun stuff of figuring out where debugging information is yourself--which gets tedious when you want to support things like split-dwarf or debug index).
- xvilka 3y agolibdwarf is the most complete C library, Rust options are also quite good. We already support both DWARF and PDB in Rizin[1] but working hard on improving that support[2] [1] https://github.com/rizinorg/rizin/tree/dev/librz/bin https://github.com/rizinorg/rizin/tree/dev/librz/bin [2] https://rizin.re/posts/gsoc-2023-announcement/#billow-debug-information-handling-improvements https://rizin.re/posts/gsoc-2023-announcement/#billow-debug-...