Skip to content

Repository files navigation

Apache 2 LicenseMaintenancebuild

Latest Releaserelease

Go Code referenceGo Report Card

split-debug

A native Golang tool to extract DWARF and Symbol information for ELF Object files

DISCLAIMER

This project is in-complete.

But feel free to contribute. This project is a proof of concept for https://github.com/parca-dev/parca-agent to extract debug information from ELF files using pure Go. It turns out a fully-fledged ELF writer written in Go doesn't exist.

So I started to write a package for that. I'm not an expert on the format, but I'm learning. Please feel free to contribute.

TODO

  • Ensure consistency of linked sections when target removed (sh_link)
  • Ensure consistency and existence of overlapping segments when a section removed (offset, range check)
  • Ensure consistency and soundness of relocations (type: SHT_RELA)
  • Ensure soundness of entry point (if the output ELF file is still executable)

Configuration

Flags:

Usage: split-debug <path>
Arguments:
<path> File path to the object file extract debug information from.
Flags:
-h, --help Show context-sensitive help.
--log-level="info" Log level.

About

[Incomplete] A native Golang tool to extract DWARF and Symbol information for ELF Object files

Topics

Resources

Stars

6 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages