ddd - The Data Display Debugger


   ddd    [--help] [--gdb] [--dbx] [--ladebug] [--wdb] [--xdb] [--jdb]
          [--pydb] [--perl] [--debugger name] [--[r]host
          [[username@]hostname]] [--trace] [--version] [--configuration]
          [options...] [prog[core|procID]]

   but usually just

   ddd    program


   DDD is a graphical front-end for GDB and other command-line  debuggers.
   Using  DDD, you can see what is going on "inside" another program while
   it executes---or what another program was doing at the moment it crashed.

   DDD 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

   * 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.

   "Classical"  UNIX  debuggers  such  as the GNU debugger (GDB) provide a
   command-line interface and a multitude of commands for these and  other
   debugging  purposes.   DDD  is  a  comfortable graphical user interface
   around an inferior GDB, DBX, Ladebug, XDB,  JDB,  Python  debugger,  or
   Perl debugger.

   DDD  is  invoked with the shell command ddd.  You can open a program to
   be debugged using `FileOpen Program' (the `Open Program' item  in  the
   `File'  menu.   You  can  get  online help at any time using the `Help'
   menu; for the first  steps,  try  `HelpWhat  Now?'.   Quit  DDD  using

   More  information  on DDD is contained in the DDD Manual.  You can read
   the text-only version in DDD (via `HelpDDD Reference') or in Emacs (as
   Info  file).   Full-fledged  HTML,  PostScript,  and  PDF  versions are
   available online via the DDD WWW page,



   These are the most important  options  used  when  starting  DDD.   All
   options  may  be  abbreviated,  as long as they are unambiguous; single
   dashes may also be used.  DDD also understands the usual X options such
   as `-display' or `-geometry'; see X(1) for details.

   All arguments and options not handled by DDD are passed to the inferior
   debugger.  To pass an option to the inferior  debugger  that  conflicts
   with  an  X  option,  or  with  a  DDD  option  listed  here,  use  the
   `--debugger' option, below.

          Show the DDD configuration settings and exit.

   --dbx  Run the DBX debugger as inferior debugger.

   --debugger name
          Invoke the inferior debugger name.  This is useful if  you  have
          several  debugger  versions  around, or if the inferior debugger
          cannot be invoked as `gdb',  `dbx',  `xdb',  `jdb',  `pydb',  or
          `perl' respectively.
          This  option  can  also  be used to pass options to the inferior
          debugger that would otherwise conflict with  DDD  options.   For
          instance, to pass the option `-d directory' to XDB, use:

            ddd --debugger "xdb -d directory"

          If  you  use  the  `--debugger' option, be sure that the type of
          inferior debugger is specified as well.  That is, use one of the
          options `--gdb', `--dbx', `--xdb', `--jdb' `--pydb', or `--perl'
          (unless the default setting works fine).

   --gdb  Run the GDB debugger as inferior debugger.

   --help Give a list of frequently used options.   Show  options  of  the
          inferior debugger as well.

   --host [username@]hostname
          Invoke  the  inferior  debugger  directly  on  the  remote  host
          hostname.  If username is given and the `--login' option is  not
          used, use username as remote user name.

   --jdb  Run JDB as inferior debugger.

          Run Ladebug as inferior debugger.

   --perl Run Perl as inferior debugger.

   --pydb Run PYDB as inferior debugger.

   --rhost [username@]hostname
          Run  the  inferior  debugger  interactively  on  the remote host
          hostname.  If username is given and the `--login' option is  not
          used, use username as remote user name.

          Show  the  interaction  between DDD and the inferior debugger on
          standard error.  This is useful for debugging DDD.  If `--trace'
          is   not   specified,   this   information   is   written   into
          `$HOME/.ddd/log', such  that  you  can  also  do  a  post-mortem

          Show the DDD version and exit.

   --wdb  Run the WDB debugger as inferior debugger.

   --xdb  Run XDB as inferior debugger.

   A  full  list  of  options, including important options of the inferior
   debugger, can be found in the DDD manual.


   X(1), gdb(1), dbx(1), wdb(1), xdb(1), perldebug(1)

   `ddd' entry in info.

   `gdb' entry in info.

   Debugging with DDD: User's  Guide  and  Reference  Manual,  by  Andreas

   Using  GDB:  A  Guide  to  the GNU Source-Level Debugger, by Richard M.
   Stallman and Roland H. Pesch.

   Java Language Debugging, at http://java.sun.com/ (and its  mirrors)  in

   The Python Language, at http://www.python.org/ and its mirrors.

   DDDA  Free  Graphical  Front-End for UNIX Debuggers, by Andreas Zeller
   and Dorothea Luetkehaus,  Computer  Science  Report  95-07,  Technische
   Universitaet Braunschweig, 1995.

   DDD    ein  Debugger  mit  graphischer  Datendarstellung,  by Dorothea
   Luetkehaus, Diploma Thesis, Technische Universitaet Braunschweig, 1994.

   The DDD FTP site,


   The DDD WWW page,


   The DDD Mailing List,


   For more information on this list, send a mail to

      ddd-request@gnu.org .


   This manual page is Copyright  2001 Universitaet Passau, Germany and 
   2001-2004 Free Software Foundation, Inc.

   Permission  is  granted  to make and distribute verbatim copies of this
   manual page provided the copyright notice and  this  permission  notice
   are preserved on all copies.

   Permission  is granted to copy and distribute modified versions of this
   manual page under the conditions for verbatim  copying,  provided  that
   the  entire  resulting derived work is distributed under the terms of a
   permission notice identical to this one.

   Permission is granted to  copy  and  distribute  translations  of  this
   manual  page  into  another  language,  under  the above conditions for
   modified versions, except that this permission notice may  be  included
   in  translations approved by the Free Software Foundation instead of in
   the original English.


Personal Opportunity - Free software gives you access to billions of dollars of software at no cost. Use this software for your business, personal use or to develop a profitable skill. Access to source code provides access to a level of capabilities/information that companies protect though copyrights. Open source is a core component of the Internet and it is available to you. Leverage the billions of dollars in resources and capabilities to build a career, establish a business or change the world. The potential is endless for those who understand the opportunity.

Business Opportunity - Goldman Sachs, IBM and countless large corporations are leveraging open source to reduce costs, develop products and increase their bottom lines. Learn what these companies know about open source and how open source can give you the advantage.

Free Software

Free Software provides computer programs and capabilities at no cost but more importantly, it provides the freedom to run, edit, contribute to, and share the software. The importance of free software is a matter of access, not price. Software at no cost is a benefit but ownership rights to the software and source code is far more significant.

Free Office Software - The Libre Office suite provides top desktop productivity tools for free. This includes, a word processor, spreadsheet, presentation engine, drawing and flowcharting, database and math applications. Libre Office is available for Linux or Windows.

Free Books

The Free Books Library is a collection of thousands of the most popular public domain books in an online readable format. The collection includes great classical literature and more recent works where the U.S. copyright has expired. These books are yours to read and use without restrictions.

Source Code - Want to change a program or know how it works? Open Source provides the source code for its programs so that anyone can use, modify or learn how to write those programs themselves. Visit the GNU source code repositories to download the source.


Study at Harvard, Stanford or MIT - Open edX provides free online courses from Harvard, MIT, Columbia, UC Berkeley and other top Universities. Hundreds of courses for almost all major subjects and course levels. Open edx also offers some paid courses and selected certifications.

Linux Manual Pages - A man or manual page is a form of software documentation found on Linux/Unix operating systems. Topics covered include computer programs (including library and system calls), formal standards and conventions, and even abstract concepts.