[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
32.6.1 Starting GUD
There are several commands for starting a debugger, each corresponding to a particular debugger program.
- M-x gdb <RET> file <RET>
-
Run GDB as a subprocess of Emacs. By default, this uses an IDE-like graphical interface; see GDB Graphical Interface. Only GDB works with the graphical interface.
- M-x dbx <RET> file <RET>
-
Run DBX as a subprocess of Emacs. Since Emacs does not implement a graphical interface for DBX, communication with DBX works by typing commands in the GUD interaction buffer. The same is true for all the other supported debuggers.
- M-x xdb <RET> file <RET>
-
Similar, but run XDB. Use the variable
gud-xdb-directories
to specify directories to search for source files. - M-x sdb <RET> file <RET>
-
Similar, but run SDB.
Some versions of SDB do not mention source file names in their messages. When you use them, you need to have a valid tags table (see section Tags Tables) in order for GUD to find functions in the source code. If you have not visited a tags table or the tags table doesn't list one of the functions, you get a message saying ‘The sdb support requires a valid tags table to work’. If this happens, generate a valid tags table in the working directory and try again.
- M-x perldb <RET> file <RET>
-
Run the Perl interpreter in debug mode to debug file, a Perl program.
- M-x jdb <RET> file <RET>
-
Run the Java debugger to debug file.
- M-x pdb <RET> file <RET>
-
Run the Python debugger to debug file.
Each of these commands takes one argument: a command line to invoke the debugger. In the simplest case, specify just the name of the executable file you want to debug. You may also use options that the debugger supports. However, shell wildcards and variables are not allowed. GUD assumes that the first argument not starting with a ‘-’ is the executable file name.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |