GNU Project -
GNU DDD is a graphical front end for the command-line debugger GDB
and the variant CUDA-GDB.
usual frontend features such as viewing source texts, DDD has
become famous through its interactive graphical data display, where
data structures are displayed as graphs.
command-line debuggers can be used with DDD, but the interface
development is no longer active in version 3.4: DBX, Ladebug, JDB,
XDB, the Perl debugger, the bash
debugger bashdb, the GNU Make
debugger remake, or the
Python debugger pydb.
For more information (and more screenshots), see the
DDD can be found at
or at any GNU FTP
mirror near you.
The ddd/ directory contains the DDD source distribution:
(2023/05/10) Final release of ddd-3.4.0 is available from ftp.gnu.org.
(2023/04/05) Release candidate 3.4.0-rc2 is available from alpha.gnu.org.
The build process of DDD is streamlined and updated to current versions of
the toolchain. The interfaces to inferior debuggers (GDB and remake) and to Gnuplot
- (2021/07/30) Michael Eager and Stefan Eickeler are the new maintainers of DDD.
- (2013/01/18) Shaunak Saha is the new maintainer of DDD.
- (2009/02/11) DDD 3.3.12 is now available from
DDD 3.3.12 features much improved support for debugging
Python, Bash and Make, as well as various bug fixes.
- Older News.
-- this package is the one you want. It includes
- the complete DDD source code,
- building instructions, as well as
- the DDD manual in TeXinfo, Info, PostScript, and PDF formats.
Here are further instructions on how to download and
unpack GNU packages.
You can support the principle of software freedom by buying stuff from the
The FSF does not distribute DDD binaries. You can ask for help if you
need technical support.
DDD binaries for GNU/Linux are
typically available via your GNU/Linux distributor:
To build DDD from sources, you need
The simplest way to build and install DDD is:
To run DDD, you need the GNU debugger
(GDB), version 4.16 or later (or depending on the program to be
debugged, possibly other command-line debuggers such
JDB, XDB, the Perl debugger,
the bash debugger bashdb, the GNU
Make debugger remake, or the
Python debugger pydb.)
The DDD Manual contains a detailed tutorial. It is available as a PDF or web page.
- Unpack the DDD source distribution
- Change into the ddd-version subdirectory
- Type ./configure && make.
- If the above doesn't give an error, type make install to install the program. (Depending on your OS and permission level you might need to use sudo make install to install instead.)
DDD--A Free Graphical Front-End for UNIX Debuggers
by Andreas Zeller and Dorothea Luetkehaus, Technische Universitaet Braunschweig, Germany
(Informatik-Bericht No. 95-07, 7 August 1995).
Here are some free third-party tutorials on the Web:
Third-party books (non-free):
Yes. Writing DDD Themes describes how to change the visual appearance of data.
It is available as a PDF or web page.
The DDD Subversion repository (containing all versions of DDD, including the
very latest changes) is available via
under "Subversion Repository".
- The art of debugging with GDB, DDD, and Eclipse, Norman S. Matloff, Peter Jay
Salzman, No Starch Press, San Francisco, 2008
Buildable tar files are available: Alpha Releases and
You can report bugs on the bug tracker.
Before you do this, please check the following:
- Please try to see whether your bug has already been reported. You can
the bug tracker.
- Please read the section ``Bugs and How to Report Them'' toward
the end of the DDD Manual.
- Be sure to include a copy of your ~/.ddd/log file
which tells your DDD configuration as well as the interaction between
DDD and the underlying command-line debugger.
- Remember, the more (relevant) information you put in your bug report,
the more likely it is to be fixed rapidly.
The purpose of reporting a bug is to enable the bug to be fixed for
the sake of the whole community of users. You may or may not receive a
response; the maintainers will send one if that helps them find or
verify a fix. Most GNU maintainers are volunteers and all are
overworked; they don't have time to help individuals and still fix the
bugs and make the improvements that everyone wants.
If you are willing to help fixing DDD bugs, you can
to the bug-ddd mailing list or access its archives.
We have a general-purpose mailing list devoted to DDD. You can ask
any questions to ddd at gnu.org. Patches and new
releases are also announced here. Subscription info and
mailing list archives are available. Owing to abuse by spammers,
it is necessary to subscribe before posting to the list.
If you need technical support on DDD, you can ask for technical support.
As mentioned above, DDD runs a number of debuggers
under the scenes. One can issue commands directly to those
debuggers. Below are links for these debuggers:
These debuggers can be used, but the active support ended with version 3.3.12
Here are some other related resources:
Have fun with DDD!
A window library needed to compile DDD.
A KDE-based GDB Interface with inspection of variable values in a tree structure.
- A list of available Perl debuggers.
The ultimate Perl reference.
- GNU Nana.
Improved support for assertions and logging in C and C++.
- GNU Checker.
A tool to find memory errors at runtime
No-one developing C or C++ code under Linux/x86 or Linux/PPC should be without it.
<shaunak at gnu.org>
<peter dot wainwright at ieee dot org>
<zeller at gnu.org>
Andrew Gaylard <apg at users dot sf dot net>
Jose María Gómez Vergara
<josemaria at jmgv dot org>
Return to GNU's home page.
Please send FSF & GNU inquiries & questions to
gnu at gnu.org.
There are also other ways to contact the FSF.
Please send comments on these web pages to
bug-ddd at gnu.org.
Copyright © 2000-2011 Free Software Foundation, Inc.,
51 Franklin Street, 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.
$Date: 2023/06/26 15:57:02 $ $Author: eager $