Friday, November 6, 2015

DDD Front-End Debugger



Summary of DDD


The purpose of a debugger such as ddd is to allow you to 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 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.


Technically speaking, ddd is a front-end to a command-line debugger (called inferior debugger,
because it lies at the layer beneath ddd). ddd supports the following inferior debuggers:
• To debug executable binaries, you can use ddd with gdb, dbx, Ladebug, or xdb.
− gdb, the gnu debugger, is the recommended inferior debugger for ddd. gdb supports
native executables binaries originally written in C, C++, Java, Modula-2, Modula-3, Pascal, Chill, Ada, and FORTRAN. (see section “Using gdb with Different Languages” in
Debugging with gdb, for information on language support in gdb.)
− As an alternative to gdb, you can use ddd with the dbx debugger, as found on several
unix systems. Most dbx incarnations offer fewer features than gdb, and some of the
more advanced dbx features may not be supported by ddd. However, using dbx may be
useful if gdb does not understand or fully support the debugging information as generated
by your compiler.
− As an alternative to gdb and dbx, you can use ddd with Ladebug, as found on Compaq and DEC systems. Ladebug offers fewer features than gdb, and some of the more
advanced Ladebug features may not be supported by ddd. However, using Ladebug may
be useful if gdb or dbx do not understand or fully support the debugging information as
generated by your compiler.
1
− As another alternative to gdb, you can use ddd with the xdb debugger, as found on
hp-ux systems.
2
.
• To debug Java byte code programs, you can use ddd with jdb, the Java debugger, as of jdk
1.1 and later. (ddd has been tested with jdk 1.1 and jdk 1.2.)
• To debug Python programs, you can use ddd with pydb, a Python debugger.
• To debug Perl programs, you can use ddd with the Perl debugger, as of Perl 5.003 and later.
• To debug Bash programs, you need a version Bash that supports extended debugging support.
To get this enhanced version see http://bashdb.sourceforge.net. You will need
version 2.05b-debugger-0.32 or later to work with ddd.

No comments: