Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: Nick Roberts <nick@nick.uklinux.net>
To: Elena Zannoni <ezannoni@redhat.com>
Cc: gdb@sources.redhat.com
Subject: Re: [Various] obsoleting the annotate level 2 interface
Date: Sat, 01 Feb 2003 16:16:00 -0000	[thread overview]
Message-ID: <15931.61994.598932.151002@nick.uklinux.net> (raw)
In-Reply-To: <15931.8581.923838.921739@localhost.redhat.com>

Elena Zannoni writes:

 > Sorry, I am a bit behind in the history, didn't emacs always have an
 > interface to gdb?

This is my understanding of events. I've gleaned the information from the
internet and I'm using my memory so it may not be entirely accurate.

In the beginning, there was gud.el, started in 1992 by Eric Raymond. This used
`gdb -fullname', now rather grandly called, annotations level 1. It just puts
out one annotation, though, saying where it is each time execution stops. Then
annotations level 2 came along, which had many more annotations. Tom Lord and
Jim Kingdon  wrote gdba.el (1994?) `to demonstrate how to build a windowed GUI
over GDB using an Emacs-style framework' (Tom's words). This was a derivative
of gud.el and, in my opinion, a significant improvement. For some reason it
didn't make its way into the Emacs community. I don't know if many GDB users
became aware of it because it was only distributed with the source code for
GDB (?).

I first came across the code in gud.el in XEmacs. It appears that someone
attempted to (unsucessfully) port it there. XEmacs actually uses `M-x gdb' as
defined in another file (gdb.el). Eli Zaretskii told me that this code came
from gdba.el and I was surprised to find that it had been deleted from the GDB
distribution.  Eli explained that this was because annotations were now
deprecated. He also urged me to use GDB/MI and is now being proved right. It
didn't seem complete, at the time, and couldn't provide the command line
interface, so I clung to annotations as I felt I could make that work.
 
Anyway we have to move forward now and, hopefully, I've learnt a lot in the
process that will help with an MI implentation.

 > I am now curious, where can i get a copy of gdb-ui.el?

Its in the Emacs repository (http://savannah.gnu.org/projects/emacs). It uses
some recently defined lisp functions so it really needs to be run on an emacs
built from there.

Take a look at http://www.nick.uklinux.net/newscreenshot.png for an early
screenshot.

The commentary says:

;; This mode acts as a graphical user interface to GDB. You can interact with
;; GDB through the GUD buffer in the usual way, but there are also further
;; buffers which control the execution and describe the state of your program.
;; It separates the input/output of your program from that of GDB and displays
;; expressions and their current values in their own buffers. It also uses
;; features of Emacs 21 such as the display margin for breakpoints, and the
;; toolbar.

I think it works better with gdb than gud.el but, although it may be
grand, there is nothing unified about it i.e it doesn't work with dbx, pdb
etc (GUD stands for Grand Unified Debugger). The toolbar might look familiar as
most of the icons come from Insight.

 >          ... make sure you do things as publically as you can,
 > otherwise you may be stuck out on a limb, if the design is not
 > accepted by the community. It also would help in case somebody else
 > wants to become involved and help you. I have had my share of problems
 > in the past, for not doing things publically in the first place, I
 > ended up having to redo work, in a few occasions.

This sounds like good advice.

Nick


  parent reply	other threads:[~2003-02-01 16:16 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-01-31 20:14 Nick Roberts
2003-01-31 20:56 ` Elena Zannoni
2003-01-31 21:10   ` Andrew Cagney
     [not found]     ` <15931.6572.456534.588251@nick.uklinux.net>
     [not found]       ` <15931.8581.923838.921739@localhost.redhat.com>
2003-02-01 16:16         ` Nick Roberts [this message]
2003-01-31 22:33   ` Nick Roberts
2003-02-01  4:13   ` Jim Blandy
     [not found] <1044050405.3227.ezmlm@sources.redhat.com>
2003-02-01  0:43 ` Jim Ingham
  -- strict thread matches above, loose matches on Subject: below --
2003-01-28 20:05 Jim Blandy
2003-01-28 20:36 ` Andrew Cagney
2003-01-29  6:14   ` Eli Zaretskii
2003-01-29 21:56     ` Jim Blandy
2003-01-28 22:29 ` Arnaud Charlet
2003-01-29  5:38   ` Andrew Cagney
2003-01-29  8:55     ` Arnaud Charlet
2003-01-29 15:19       ` Andrew Cagney
2003-01-29 15:31         ` Arnaud Charlet
2003-01-29 15:43           ` Andrew Cagney
2003-01-29 15:51             ` Arnaud Charlet
2003-01-29 15:55               ` Christopher Faylor
2003-01-29 16:01                 ` Arnaud Charlet
2003-01-29 16:19                   ` Andrew Cagney
2003-01-29 16:34                     ` Arnaud Charlet
2003-01-29 17:16                       ` Andrew Cagney
2003-01-29 19:03                       ` Tom Tromey
2003-01-29 22:38                         ` Jim Blandy
2003-01-29 17:19         ` Eli Zaretskii

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=15931.61994.598932.151002@nick.uklinux.net \
    --to=nick@nick.uklinux.net \
    --cc=ezannoni@redhat.com \
    --cc=gdb@sources.redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox