Mercurial > emacs
comparison man/building.texi @ 60440:c82b8f53ded0
(Starting GUD): Don't explain text vs graphical GDB here.
Just mention they exist, and xref.
Delete "just one debugger process".
(Debugger Operation): Move GUD tooltip info here.
(GUD Tooltips): Node deleted.
(GDB Graphical Interface): Explain the two GDB modes here.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Sun, 06 Mar 2005 18:08:00 +0000 |
parents | f69c04fae9ff |
children | f8557889a5f1 |
comparison
equal
deleted
inserted
replaced
60439:56ad74aa4129 | 60440:c82b8f53ded0 |
---|---|
323 @menu | 323 @menu |
324 * Starting GUD:: How to start a debugger subprocess. | 324 * Starting GUD:: How to start a debugger subprocess. |
325 * Debugger Operation:: Connection between the debugger and source buffers. | 325 * Debugger Operation:: Connection between the debugger and source buffers. |
326 * Commands of GUD:: Key bindings for common commands. | 326 * Commands of GUD:: Key bindings for common commands. |
327 * GUD Customization:: Defining your own commands for GUD. | 327 * GUD Customization:: Defining your own commands for GUD. |
328 * GUD Tooltips:: Showing variable values by pointing with the mouse. | |
329 * GDB Graphical Interface:: An enhanced mode that uses GDB features to | 328 * GDB Graphical Interface:: An enhanced mode that uses GDB features to |
330 implement a graphical debugging environment through | 329 implement a graphical debugging environment through |
331 Emacs. | 330 Emacs. |
332 @end menu | 331 @end menu |
333 | 332 |
338 to a particular debugger program. | 337 to a particular debugger program. |
339 | 338 |
340 @table @kbd | 339 @table @kbd |
341 @item M-x gdb @key{RET} @var{file} @key{RET} | 340 @item M-x gdb @key{RET} @var{file} @key{RET} |
342 @findex gdb | 341 @findex gdb |
343 Run GDB as a subprocess of Emacs. By default, GDB starts as for | 342 Run GDB as a subprocess of Emacs. By default, this operates in |
344 @kbd{M-x gdba} below. If you want GDB to start as in Emacs 21.3 and | 343 graphical mode; @xref{GDB Graphical Interface}. Graphical mode |
345 earlier then edit the string in the minibuffer or set | 344 does not support any other debuggers. |
346 @code{gud-gdb-command-name} to ``gdb --fullname''. You need to do | |
347 this if you want to run multiple debugging sessions within one Emacs | |
348 session. In this case, the command creates a buffer for input and | |
349 output to GDB, and switches to it. If a GDB buffer already exists, it | |
350 just switches to that buffer. | |
351 | |
352 @item M-x gdba @key{RET} @var{file} @key{RET} | |
353 Run GDB as a subprocess of Emacs, providing a graphical interface | |
354 to GDB features through Emacs. @xref{GDB Graphical Interface}. | |
355 | 345 |
356 @item M-x dbx @key{RET} @var{file} @key{RET} | 346 @item M-x dbx @key{RET} @var{file} @key{RET} |
357 @findex dbx | 347 @findex dbx |
358 Similar, but run DBX instead of GDB. | 348 Similar, but run DBX instead of GDB. |
359 | 349 |
393 the debugger. In the simplest case, specify just the name of the | 383 the debugger. In the simplest case, specify just the name of the |
394 executable file you want to debug. You may also use options that the | 384 executable file you want to debug. You may also use options that the |
395 debugger supports. However, shell wildcards and variables are not | 385 debugger supports. However, shell wildcards and variables are not |
396 allowed. GUD assumes that the first argument not starting with a | 386 allowed. GUD assumes that the first argument not starting with a |
397 @samp{-} is the executable file name. | 387 @samp{-} is the executable file name. |
398 | |
399 Emacs can only run one debugger process at a time. | |
400 | 388 |
401 @node Debugger Operation | 389 @node Debugger Operation |
402 @subsection Debugger Operation | 390 @subsection Debugger Operation |
403 | 391 |
404 @cindex fringes, and current execution line in GUD | 392 @cindex fringes, and current execution line in GUD |
421 | 409 |
422 If you wish, you can control your debugger process entirely through the | 410 If you wish, you can control your debugger process entirely through the |
423 debugger buffer, which uses a variant of Shell mode. All the usual | 411 debugger buffer, which uses a variant of Shell mode. All the usual |
424 commands for your debugger are available, and you can use the Shell mode | 412 commands for your debugger are available, and you can use the Shell mode |
425 history commands to repeat them. @xref{Shell Mode}. | 413 history commands to repeat them. @xref{Shell Mode}. |
414 | |
415 @cindex tooltips with GUD | |
416 @vindex tooltip-gud-modes | |
417 The Tooltip facility (@pxref{Tooltips}) provides support for GUD@. | |
418 You activate this feature by customizing the @code{tooltip} group. | |
419 Then you can display a variable's value in a tooltip simply by | |
420 pointing at it with the mouse. This operates in the GUD buffer and in | |
421 source buffers with major modes in the list @code{tooltip-gud-modes}. | |
426 | 422 |
427 @node Commands of GUD | 423 @node Commands of GUD |
428 @subsection Commands of GUD | 424 @subsection Commands of GUD |
429 | 425 |
430 The GUD interaction buffer uses a variant of Shell mode, so the | 426 The GUD interaction buffer uses a variant of Shell mode, so the |
651 | 647 |
652 If you don't use @samp{%p} in the command string, the command you define | 648 If you don't use @samp{%p} in the command string, the command you define |
653 ignores any numeric argument. | 649 ignores any numeric argument. |
654 @end table | 650 @end table |
655 | 651 |
656 @node GUD Tooltips | |
657 @subsection GUD Tooltips | |
658 | |
659 @cindex tooltips with GUD | |
660 The Tooltip facility (@pxref{Tooltips}) provides support for GUD@. If | |
661 GUD support is activated by customizing the @code{tooltip} group, | |
662 variable values can be displayed in tooltips by pointing at them with | |
663 the mouse in the GUD buffer or in source buffers with major modes in the | |
664 customizable list @code{tooltip-gud-modes}. | |
665 | |
666 @node GDB Graphical Interface | 652 @node GDB Graphical Interface |
667 @subsection GDB Graphical Interface | 653 @subsection GDB Graphical Interface |
668 | 654 |
669 By default, the command @code{gdb} starts GDB using a graphical | 655 By default, the command @code{gdb} starts GDB using a graphical |
670 interface where you view and control the program's data using Emacs | 656 interface where you view and control the program's data using Emacs |
671 windows. You can still interact with GDB through the GUD buffer, but | 657 windows. You can still interact with GDB through the GUD buffer, but |
672 the point of this mode is that you can do it through menus and clicks, | 658 the point of this mode is that you can do it through menus and clicks, |
673 without needing to know GDB commands. | 659 without needing to know GDB commands. |
674 | 660 |
661 @vindex gud-gdb-command-name | |
675 @findex gdba | 662 @findex gdba |
676 If you have customised @code{gud-gdb-command-name}, then start this | 663 You can also run GDB in text command mode, which creates a buffer |
677 mode with the command @code{gdba}. | 664 for input and output to GDB. To do this, set |
665 @code{gud-gdb-command-name} to @code{"gdb --fullname"} or edit the | |
666 startup command in the minibuffer to say that. You need to do use | |
667 text command mode to run multiple debugging sessions within one Emacs | |
668 session. If you have customised @code{gud-gdb-command-name} in that | |
669 way, then you can use @kbd{M-x gdba} to invoke GDB in graphical mode. | |
678 | 670 |
679 @menu | 671 @menu |
680 * Layout:: Control the number of displayed buffers. | 672 * Layout:: Control the number of displayed buffers. |
681 * Breakpoints Buffer:: A breakpoint control panel. | 673 * Breakpoints Buffer:: A breakpoint control panel. |
682 * Stack Buffer:: Select a frame from the call stack. | 674 * Stack Buffer:: Select a frame from the call stack. |