EVERYTHING XIAOMI
Get listed
GDB logo

GDB

GDB is a free debugger for examining a program during execution or after a crash.

Place
#10 of 27
Score
6.2
GDB's website

What GDB is

GDB is a free debugger for examining a program during execution or after a crash. It can start programs, stop them when specified conditions occur, inspect the paused state, and change program state for experimentation. A target can run on the same machine, on a remote machine, or in a simulator. GDB supports macOS, Microsoft Windows, and popular UNIX variants, along with languages including Ada, Assembly, C, C++, D, Fortran, Go, Objective-C, OpenCL, Modula-2, Pascal, and Rust. It supports conditional and exception breakpoints, as well as core dump debugging. On supported platforms, record-and-replay features allow forward and reverse execution. Remote debugging connects through gdbserver. GDB can be extended with Python when built with Python support; in that configuration it supports the Debugger Adapter Protocol in addition to its console and GDB/MI interfaces. Version 18.1 was released on September 25, 2026. GDB is part of the GNU Project and is distributed under the GNU General Public License. Official releases are available through GNU and Sourceware release sites, with signature verification through the GNU keyring.

Good

  • Debugs local, remote, and simulator targets
  • Supports a broad set of programming languages
  • Includes conditional and exception breakpoints
  • Offers record-and-replay on supported platforms
  • Python configuration enables the Debugger Adapter Protocol

Watch out

  • Record-and-replay is limited to supported platforms
  • Debugger Adapter Protocol requires a Python-enabled build

Who it suits

GDB suits developers and others who need to inspect program execution or diagnose crashes across supported languages and targets. Its remote, simulator, and record-and-replay options may be useful for workflows that need those debugging modes.

Verdict

GDB provides core debugging functions across many languages and target types, with additional replay and protocol options depending on platform or build configuration. It is free software under the GNU General Public License.

Plans and prices

From GDB's own pricing page, checked 30 Sep 2026.

All about pricing
PlanPriceWhat it gives you
GDBFreeGNU General Public License · source code available

The facts

Each one read from GDB's own pages, with the date it was checked.

What it does

Core debugging
GDB can start programs, stop them under specified conditions, examine stopped execution, and change program state for experimentation.checked 30 Sep 2026
Debugger protocols
GDB supports the console interpreter, GDB/MI, and the Debugger Adapter Protocol when built with Python support.checked 30 Sep 2026
Distribution
Official releases are downloadable from GNU's HTTPS server and Sourceware's releases site, with signature verification through the GNU keyring.checked 30 Sep 2026
Languages
GDB supports Ada, Assembly, C, C++, D, Fortran, Go, Objective-C, OpenCL, Modula-2, Pascal, and Rust.checked 30 Sep 2026
Latest release
GDB version 18.1 was released on September 25, 2026.checked 30 Sep 2026
License
GDB is free software protected by the GNU General Public License, which permits copying, adapting, and redistributing copies with source access.checked 30 Sep 2026
Operating systems
GDB runs on popular UNIX and Microsoft Windows variants and on macOS.checked 30 Sep 2026
Project identity
GDB is a Free Software project that is part of the GNU Project.checked 30 Sep 2026
Purpose
GDB lets users inspect what another program is doing while it executes or after it crashes.checked 30 Sep 2026
Python extension
GDB can be extended with Python when configured with --with-python.checked 30 Sep 2026
Record and replay
On supported platforms, GDB records process execution and replays it with forward and reverse execution commands.checked 30 Sep 2026
Remote debugging
The gdbserver control program connects programs to a remote GDB through target remote or target extended-remote.checked 30 Sep 2026
Security behavior
On targets that support it, virtual address space randomization protects programs against certain security attacks.checked 30 Sep 2026
Support
The project provides mailing lists for announcements, discussion, patches, bug reports, and testing.checked 30 Sep 2026
Targets
Programs can run on the same machine, another machine remotely, or a simulator.checked 30 Sep 2026
The full review of GDB

GDB is a debugger for examining programs during execution or after a crash. It is best suited to developers who need execution control across a broad set of languages and local, remote, or simulator targets. Its range is a strength, though some capabilities depend on the platform or how GDB is built.

Overview

GDB can launch a program, pause it under specified conditions, inspect its stopped state, and change that state to explore different behavior. That makes it useful for investigating both reproducible problems and failures that require closer inspection than ordinary execution provides.

Targets can run on the same machine, on a remote machine, or in a simulator. This flexibility serves varied debugging setups, but does not mean every feature works identically across them. GDB is part of the GNU Project and is distributed under the GNU General Public License, which allows users to copy, adapt, and redistribute it with source access.

Key features

Execution control and crash investigation

Conditional and exception breakpoints let developers stop at relevant situations rather than inspecting execution indiscriminately. GDB can examine stopped execution and alter program state for experimentation; it can also debug core dumps, supporting investigation after a crash when a live session is no longer available.

Remote debugging and replay

For remote work, the gdbserver control program connects a target program to GDB using target remote or target extended-remote. That separation is valuable when the program runs on another machine. On supported platforms, GDB can record execution and replay it with forward and reverse commands, helping trace how a failure developed. Replay is conditional on platform support, so it should not be treated as a universal part of every setup.

Languages and extension

GDB supports Ada, Assembly, C, C++, D, Fortran, Go, Objective-C, OpenCL, Modula-2, Pascal, and Rust. That breadth makes it a strong candidate for projects spanning several of those languages. Python extensions are available when GDB is configured with --with-python; the GDB/MI and Debugger Adapter Protocol interfaces likewise depend on Python support in the build. The console interpreter is also supported.

Security and distribution

On targets that support it, virtual address space randomization protects programs against certain security attacks. Official releases are downloadable from GNU's HTTPS server and Sourceware's releases site, with signature verification through the GNU keyring. The project also provides mailing lists for announcements, discussion, patches, bug reports, and testing.

Pricing

GDB costs nothing under the GNU General Public License, with source code available. There are no paid tiers or seat-based plan distinctions in the stated offer, making it suitable for individuals and teams that need a capable debugger without a software fee. Its trade-offs are not subscription caps but platform- and build-dependent capabilities, plus the need to work with its debugger interfaces and target setup.

Platforms

GDB runs on UNIX variants, Microsoft Windows, and macOS. It supports native, remote, and simulator targets, but replay and some protocol options are conditional on platform support or Python-enabled builds. Choose it when those target choices and supported languages match the project; verify the relevant build and target requirements before relying on optional capabilities.

Who it's for

GDB is a sensible choice for developers who need to control execution, inspect crashes, or debug across local and remote systems in one debugger. Its language coverage and free, source-available license are particularly useful for varied projects and teams that want to adapt or redistribute the software. It is a less natural fit for someone seeking a debugger whose specialized workflow or platform-specific strengths matter more than GDB's broad target and language coverage.

Pros and cons

  • Pros: Conditional and exception breakpoints, execution-state changes, and core-dump debugging support focused investigation during and after failures.
  • Pros: Native, remote, and simulator targets, alongside support for numerous languages, suit diverse development setups.
  • Pros: Free licensing with source access permits copying, adaptation, and redistribution.
  • Cons: Record-and-replay is limited to supported platforms, so it cannot be assumed for every target.
  • Cons: Python extensions and the Debugger Adapter Protocol require a Python-enabled build, making those options configuration-dependent.

Alternatives

Browse the Debuggers category to compare more options. Consider LLDB if you want another free, open-source debugger with support across Android, iOS, Linux, macOS, and Windows.

IDA Pro is worth considering for x86-32 and x86-64 disassembly and cloud-based decompilers: IDA Free includes two cloud-based decompilers, while IDA Pro Essential costs 1099.00 USD. RenderDoc is a free, open-source option for readers comparing debugger tools. Delve is another free debugger to consider.

Xdebug may suit readers looking for a freemium alternative; its Pro plan is £200 a year and covers one developer. FlowStorm is a free and open-source alternative for readers comparing no-cost tools. WinDbg is a free option for Windows users. dnSpyEx is a free GPLv3-licensed option for Linux and Windows.

Verdict

Choose GDB if you need a free debugger with broad language coverage, detailed execution control, and native, remote, or simulator targets. Its strongest case is the combination of post-crash investigation and flexible target support without a license fee. Look elsewhere if your workflow depends on replay or protocol features that your platform or build does not support, or if another debugger better matches your target environment.

Alternatives to GDB

All alternatives
  1. 1

    LLDB

    Free planAndroidiOSLinuxmacOS
    7.3Free plan
  2. 2IDA Pro logo

    IDA Pro

    Free planLinuxmacOSWindows
    7.0From $1,099 a year
  3. 3

    PonyDebugger

    Free planiOSWebmacOSSelf-hosted
    6.8Free plan
  4. 4

    pyOCD

    Free planAPILinuxmacOSSelf-hosted
    6.8Free plan
  5. 5

    Perl Debugger

    Free planLinuxmacOSWindows
    6.5Free plan
  6. 6Black Magic Debug logo

    Black Magic Debug

    Free planLinuxmacOSWindows
    6.4Free plan