FREEDOM251

Freedom251 › Debugging Software

rr

Paid Linux

Visit rr Alternatives

rr's own site

What rr is

rr is a free, open-source Linux debugging tool that records application executions and replays them deterministically. During replay, developers can move backward under gdb, including to breakpoints and data watchpoints, to investigate how a program reached a particular state. It can record and replay multi-process workloads, including entire containers, and its traces are described as durable, compact, and portable between machines. rr supports the standard gdb server interface and can also present the gdb command-line interface. The project lists C, C++, and Go among supported languages, with Firefox, Chrome, QEMU, LibreOffice, and Go programs as application examples. IDEs known to work with rr include Visual Studio Code, CLion, QtCreator, Eclipse, Emacs GUD/gdb-mi, NeoVim, gdbgui, and Seer. The project lists Linux kernel 4.7 or later and supported Intel, AMD, or AArch64 processors as requirements. Installation instructions cover Fedora and Ubuntu packages, with a source build recommended if packages do not work. rr emulates a single-core machine, cannot record processes sharing memory outside the recording tree, and does not support every system call.

Who it suits

rr suits Linux developers, particularly those working in C, C++, or Go, who need to replay executions and debug backward. It can fit workflows using gdb or one of the listed IDEs that work with rr.

What it does well

  • Replays recorded executions deterministically.
  • Supports reverse execution to breakpoints and data watchpoints.
  • Can record multi-process workloads and entire containers.
  • Works with gdb and several listed IDEs.
  • Free and open source.

What to know first

  • Requires Linux kernel 4.7 or later.
  • Emulates a single-core machine.
  • Cannot record certain processes sharing memory outside its recording tree.
  • Does not support every system call.

Limits

rr emulates a single-core machine, cannot record processes that share memory with processes outside the recording tree and lacks support for every system call. Recording overhead varies by workload.

Getting started

  1. Open the rr project website
  2. Install the Fedora or Ubuntu package
  3. Build rr from source if packages do not work
  4. Use rr with gdb or a listed compatible IDE
  5. Confirm your Linux kernel and processor meet the requirements

Verdict

rr offers time-travel debugging for supported Linux workloads, including backward execution through gdb. Check its kernel, processor, shared-memory, and system-call constraints against the workload before adopting it.

Questions

Is rr free?

Yes. rr is free and open source.

Which operating systems does rr support?

The target platform is Linux, with a Linux kernel requirement of 4.7 or later.

Which languages are supported?

The listed supported languages are C, C++ and Go.

Can rr debug backward?

Yes. Reverse execution under gdb can move to breakpoints and data watchpoints.

Which IDEs work with rr?

The project lists Visual Studio Code, CLion, QtCreator, Eclipse, Emacs GUD/gdb-mi, NeoVim, gdbgui and Seer as known to work.

Where can users get help?

The project directs questions to its mailing list and the #rr channel on chat.mozilla.org.

Facts from rr's own pages

Community support
The site directs users to the mailing list and #rr on chat.mozilla.org for questions. · rr-project.org, 4 Oct 2026
Development
The repository says rr originated at Mozilla and development is sponsored by Pernosco. · github.com, 4 Oct 2026
GDB interface
rr implements the standard gdb server interface and can also present the gdb command-line interface. · github.com, 4 Oct 2026
Hardware requirements
The repository lists supported Intel Nehalem-or-later, certain AMD Zen-or-later, and certain AArch64 CPUs, including Apple Silicon M-series. · github.com, 4 Oct 2026
IDE integrations
The IDE guide lists Visual Studio Code, CLion, QtCreator, Eclipse, Emacs GUD/gdb-mi, NeoVim, gdbgui, and Seer as known to work with rr. · github.com, 4 Oct 2026
IDE support
The project lists Visual Studio Code, CLion, QtCreator, Eclipse, emacs GUD/gdb-mi, NeoVim, gdbgui, and Seer as known to work. · github.com, 10 Oct 2026
Installation
The site provides Fedora and Ubuntu package installation instructions and recommends building from source if packages do not work. · rr-project.org, 4 Oct 2026
Integrations
rr works with gdb scripting and IDEs that support GUI debugging through gdb or gdbserver. · rr-project.org, 10 Oct 2026
Intended users
The project describes rr as aspiring to be a primary C/C++ debugging tool for Linux and says it is used by developers to fix bugs. · rr-project.org, 10 Oct 2026
Kernel requirement
The repository lists Linux kernel 4.7 or later as a system requirement. · github.com, 4 Oct 2026
Limitations
rr emulates a single-core machine, so parallel programs incur the slowdown of running on one core. · rr-project.org, 10 Oct 2026
Performance
Recording overhead depends on workload; the site reports slowdowns down to 1.2x on Firefox test suites and lower overhead for mostly single-threaded programs than competing systems it knows of. · rr-project.org, 10 Oct 2026
Purpose
rr records, replays, and debugs application executions deterministically. · rr-project.org, 10 Oct 2026
Reverse execution
rr provides reverse execution under gdb, including reverse execution to breakpoints and data watchpoints. · rr-project.org, 10 Oct 2026
Support
The project directs users with questions to its mailing list or the #rr channel on chat.mozilla.org. · rr-project.org, 10 Oct 2026
Supported applications
The site names Firefox, Chrome, QEMU, LibreOffice, and Go programs as examples of applications rr can record and replay. · rr-project.org, 10 Oct 2026
System requirements
rr requires a reasonably modern x86 CPU or certain ARM CPUs, and its README specifies Linux kernel and CPU architecture requirements. · github.com, 10 Oct 2026
Trace portability
The project describes rr traces as durable, compact, and portable between machines. · rr-project.org, 10 Oct 2026
Workloads
rr supports recording and replaying multi-process workloads, including entire containers. · rr-project.org, 10 Oct 2026

Where rr stands on Freedom251

Look at these too