EpicGames / raddebugger

The RAD Debugger Project · alpha

A native, multi‑process, graphical debugger.

User-mode and graphical. Today it supports local-machine Windows x64 debugging with PDBs; native Linux debugging and DWARF debug info come next.

alphaWindows x64 · PDB · nowLinux x64 · DWARF · next
From the README

ctrl implements asynchronous process control, stepping, and breakpoints for all attached processes. Runs in lockstep with attached processes. When it runs, attached processes are halted. When attached processes are running, it is halted.

One debug format in the middle

RAD Debug Info, converted on demand
todayPDB

Converted into RDI on demand, in a separate process.

eventuallyPE / ELF with DWARF

Partial converter in src/rdi_from_dwarf.

rdiRAD Debug Info

The custom format the debugger parses and uses, rather than the debug info toolchains natively produce.

optionalRAD Linker

Writes standard PDBs, and can natively create RDI too — no conversion at debug time.

utilityradbin

Converts native debug info to RDI and dumps RDI contents as text.

Roadmap

as the project lays it out
nowAlpha battle-testing

Rock-solid local x64 Windows debugging: debug info conversion and loading, process control, stepping, evaluation, and a robust frontend.

nextLocal x64 Linux debugging

Port demon, an ELF unwinder in ctrl, DWARF-to-RDI, plus the render, font and OS layers.

and beyondFurther directions

Remote debugging, other architectures, and a better visualization engine.

The debugger is in alpha. The project asks for issue reports with whatever you can gather — dump files with the build you used, steps to reproduce, test executables.