GDB: The GNU Project Debugger
[bugs]
[GDB Maintainers]
[contributing]
[current git]
[documentation]
[download]
[home]
[irc]
[links]
[mailing lists]
[news]
[schedule]
[song]
[wiki]
GDB: The GNU Project Debugger
What is GDB?
GDB, the GNU Project debugger, allows you to see what is going on
`inside' another program while it executes -- or what another program
was doing at the moment it crashed.
GDB can do four main kinds of things (plus other things in support
of these) to help you catch bugs in the act:
- Start your program, specifying anything that might affect its behavior.
- Make your program stop on specified conditions.
- Examine what has happened, when your program has stopped.
- Change things in your program, so you can experiment with
correcting the effects of one bug and go on to learn about another.
Those programs might be executing on the same machine as GDB (native),
on another machine (remote), or on a simulator. GDB can run on most
popular UNIX and Microsoft Windows variants, as well as on Mac OS X.
What Languages does GDB Support?
GDB supports the following languages (in alphabetical order):
- Ada
- Assembly
- C
- C++
- D
- Fortran
- Go
- Objective-C
- OpenCL
- Modula-2
- Pascal
- Rust
GDB version 10.1
Version 10.1 of GDB, the GNU
Debugger, is now available for download. See the ANNOUNCEMENT for details
including changes in this release.
An errata list (PROBLEMS) and documentation
are also available.
News
- October 24th, 2020: GDB 10.1 Released!
-
The latest version of GDB, version 10.1, is available for download.
This version of GDB includes the following changes and enhancements:
- Support for debugging new targets:
- GDBserver support for the following targets:
- ARC GNU/Linux
- RISC-V GNU/Linux
- Multi-target debugging support (experimental)
- Support for debuginfod, an HTTP server for distributing ELF/DWARF
debugging information as well as source code.
- Support for debugging a 32-bit Windows program using a 64-bit Windows GDB.
- Support for building GDB with GNU Guile 3.0 and 2.2 (in addition to 2.0)
- Improved performance during startup through the use of threading
during symbol table loading (an optional feature in GDB 9, now
enabled by default in GDB 10).
- Various enhancements to the Python and Guile APIs
- Various TUI Mode fixes and enhancements.
- Other miscellaneous enhancements:
- Detection when attaching to a process of a mismatch between
this process and the executable previously loaded into GDB.
- Support for default arguments for "alias" commands.
- GDBserver support for the following host triplets has been removed:
- i[34567]86-*-lynxos*
- powerpc-*-lynxos*
- i[34567]86-*-nto*
- bfin-*-*linux*
- crisv32-*-linux*
- cris-*-linux*
- m32r*-*-linux*
- tilegx-*-linux*
- arm*-*-mingw32ce*
- i[34567]86-*-mingw32ce*
See the NEWS file for a more complete and detailed list of what this release includes.
- September 13th, 2020: GDB 10 branch created
-
The GDB 10 branch (gdb-10-branch) has been created.
To check out a copy of the branch use:
git clone --branch gdb-10-branch git://sourceware.org/git/binutils-gdb.git
- May 23rd, 2020: GDB 9.2 Released!
-
The latest version of GDB, version 9.2, is available for download.
This is a minor corrective release over GDB 9.1, fixing the following
issues:
- PR tui/25586 (Resizing the source/disassembly or command window produces corrupted display)
- PR gdb/25650 (GDB can't 'printf' a convenience variable holding an inferior address)
- PR build/25981 (Use of short i386 register names breaks compilation on recent Solaris 11.4)
- PR symtab/26003 (infinite loop loading symbols from separate debug objfile)
- PR build/26029 (GDB build failure on SPARC)
- Nov 28, 2006: Reversible Debugging
-
The GDB maintainers are looking for contributors interested
in reversible debugging.
Late breaking information, such as recently added features, can be
found in the NEWS file in the gdb source tree. Old announcements are in the
news archive.
[bugs]
[GDB Maintainers]
[contributing]
[current git]
[documentation]
[download]
[home]
[irc]
[links]
[mailing lists]
[news]
[schedule]
[song]
[wiki]
Please send FSF & GNU inquiries & questions to gnu@gnu.org. There are also other ways to
contact the FSF.
This page is maintained by the GDB
developers.
Copyright Free Software Foundation, Inc., 51 Franklin St - Fifth
Floor, Boston, MA 02110-1301 USA.
Verbatim copying and distribution of this entire article is
permitted in any medium, provided this notice is preserved.
Last modified 2020-10-24.