Debugging with GDB

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

InfluxDB – Built for High-Performance Time Series Workloads
InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  1. rr

    Record and Replay Framework

    https://en.wikipedia.org/wiki/Time_travel_debugging :

    > Interactive debuggers include the ability to modify code and step forward based on updated information.[4] Reverse debugging tools allow users to step backwards in time through the steps that resulted in reaching a particular point in the program. Time traveling debuggers provide these features and also allow users to interact with the program, changing the history if desired, and watch how the program responds.[5]

    https://github.com/rr-debugger/rr :

    > System requirements: Linux kernel ≥ 3.11 is required (for PTRACE_SETSIGMASK).

    > rr currently requires either:*

    > An Intel CPU with Nehalem (2010) or later microarchitecture. [OR] Certain AMD Zen or later processors

    Is there an rr-like reverse time-travel debugging tool for ARM?

    Are GUIs like Voltron and Ghidra helpful for rr-like traces?

  2. InfluxDB

    InfluxDB – Built for High-Performance Time Series Workloads. InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.

    InfluxDB logo
  3. gdb-dashboard

    Modular visual interface for GDB in Python

    Try GDB Dashboard, it makes gdb much easier to use:

    https://github.com/cyrus-and/gdb-dashboard

    There's also Voltron which works with both gdb and lldb (amongst others):

    https://github.com/snare/voltron

  4. voltron

    A hacky debugger UI for hackers

    In a past life I used Voltron[0] with lldb. Depending on your use case, it might be enough? Watching what value lives in what register works at least (or at least worked last time I used it). It's designed around having things in separate terminals, so you'll need tmux/screen/tiling window manager to get a similar view to gef.

    [0] https://github.com/snare/voltron

  5. gef

    GEF (GDB Enhanced Features) - a modern experience for GDB with advanced debugging capabilities for exploit devs & reverse engineers on Linux

    I still struggle with GDB but my excuse is that I seldom use it.

    When I was studying reverse engineering though, I came across a really cool kit (which I've yet to find an alternative for lldb, which would be nice given: rust)

    I'd recommend checking it out, if for no other reason than it makes a lot of things really obvious (like watching what value lives in which register).

    https://github.com/hugsy/gef

    LLDB's closest alternative to this is called Venom, but it's not the same at all. https://github.com/ovh/venom

  6. venom

    🐍 Manage and run your integration tests with efficiency - Venom run executors (script, HTTP Request, web, imap, etc... ) and assertions (by ovh)

    I still struggle with GDB but my excuse is that I seldom use it.

    When I was studying reverse engineering though, I came across a really cool kit (which I've yet to find an alternative for lldb, which would be nice given: rust)

    I'd recommend checking it out, if for no other reason than it makes a lot of things really obvious (like watching what value lives in which register).

    https://github.com/hugsy/gef

    LLDB's closest alternative to this is called Venom, but it's not the same at all. https://github.com/ovh/venom

  7. clasp

    clasp Common Lisp environment (by clasp-developers)

    The GDB JIT interface implementation is seriously flawed. I love GDB - but this causes me a LOT of grief when debugging clasp (Common Lisp implemented using llvm as the backend https://github.com/clasp-developers/clasp.git).

    Every time a JITted object file is added using the API, the entire symbol table is sorted. If you have 10,000+ JITted object files as we do - it takes hours to days to weeks to register them all.

    We use the Undo time traveling debugger that builds on top of GDB. It's awesome but we are crippled because of the JIT API implementation.

    I'd love to see this get fixed - if anyone knows who to talk with about it - drop me a line.

  8. lldb-mi

    LLDB's machine interface driver

    Well, there's LLDB (https://lldb.llvm.org/) - I've heard it's got some nifty architectural features (e.g. having access to the Clang framework for handling C/C++ expressions).

    I've done some minimal poking about in the code; I found its object-orientation a bit hard to grok (just for me personally) but it seemed to be quite uniformly applied so it might well be easier to work with.

  9. SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  10. qBittorrent

    qBittorrent BitTorrent client

    They have a step-by-step guide for using them, without mentioning kdevelop:

    https://github.com/qbittorrent/qBittorrent/wiki/Setup-GDB-wi...

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Hi, I'm working on GDBFrontend debugger, what features would you like to see in your use cases?

    5 projects | /r/embedded | 22 Nov 2021
  • UndoDB – The interactive time travel debugger for Linux C/C++ for debugging

    1 project | news.ycombinator.com | 23 May 2025
  • ChatDBG: AI-based debugging assistant for C/C++/Python/Rust

    1 project | news.ycombinator.com | 10 Feb 2025
  • The Art of Debugging

    1 project | news.ycombinator.com | 28 Jan 2025
  • Demystifying Debuggers, Part 2: The Anatomy of a Running Program

    1 project | news.ycombinator.com | 24 Dec 2024

Did you know that C++ is
the 7th most popular programming language
based on number of references?