1. GDB Front Ends

Here's a partial list of front ends using GDB. If you know of others, please add a link.

1.1. Using modern GDB/MI

GDB/MI is a line based machine oriented text interface to GDB. It is specifically intended to support the development of systems which use the debugger as component of a larger system. See The GDB/MI Interface in the GDB manual.

BVRDE - A fully integrated development environment (IDE) for remote cross-platform compiling and debugging of UNIX and LINUX console applications. BVRDE runs on a Windows platform, but compiles and debugs applications on UNIX systems.

Eclipse's Standalone Debugger - Starts up a subset of Eclipse CDT plugins specifically to C/C++ debugging, plus a command-line script which allows an end-user to start up the debugger from the command-line and pass arguments that will start the debugger for the appropriate task.

KDevelop - A feature-full, plugin extensible, free, open source IDE for C/C++. Runs on Linux, Solaris, FreeBSD, Mac OS X and other Unix flavors, and Windows as well. It is based on KDE and Qt libraries and is under development since 1998.

NetBeans - Although this is the official IDE for Java, it can do C/C++, Fortran and Assembly too. It is plugin extensible, and you'll find plugins that extend the GDB integration, like e.g., the GDBserver plugin here.

Nemiver - An easy to use standalone C/C++ debugger that integrates well in the GNOME environment.

Lazarus IDE for the Free Pascal Compiler - A Delphi compatible cross-platform IDE for Rapid Application Development. It has variety of components ready for use and a graphical form designer to easily create complex graphical user interfaces.

1.3. Using the old (deprecated) annotations mechanism (please fix them!)

GNU DDD - A graphical front-end for command-line debuggers (GDB, Perl, bash, GNU Make, Python, etc.). Besides "usual" front-end features such as viewing source texts, DDD has become famous through its interactive graphical data display, where data structures are displayed as graphs.

CGDB - cgdb is a lightweight curses (terminal-based) interface. In addition to the standard gdb console, cgdb provides a split screen view that displays the source code as it executes. The keyboard interface is modelled after vim, so vim users should feel at home using cgdb.

KDbg (using plain CLI) - A graphical user interface to gdb. Provides an intuitive interface for setting breakpoints, inspecting variables, and stepping through code. Requires KDE, but you can of course debug any program.

2. Other tools that extend GDB

PGDB - PGDB is a parallel/distributed debugger, based upon GDB, designed for debugging MPI jobs on a cluster.

3. Libraries

Here's a partial list of libraries that interface with GDB. If you know of others, please add a link.

3.1. Thin GDB/MI wrappers

These are reusable libraries that provide a programmatic GDB/MI interface, so you can create a GDB frontend without writing an MI parser, etc. You can also look at the source code for the frontends above, and consider reusing their MI bits.

pygdbmi - Python parser to turn gdb mi output into Python dictionaries. Also has class to spawn and manage gdb subprocesses. Used by gdbgui's backend.