From: phillip.lord@russet.org.uk (Phillip Lord)
To: Eli Zaretskii <eliz@gnu.org>
Cc: emacs-devel@gnu.org
Subject: Re: Debugging Emacs
Date: Fri, 27 Nov 2015 22:05:52 +0000 [thread overview]
Message-ID: <87lh9jp073.fsf@russet.org.uk> (raw)
In-Reply-To: <83wpt3qq7b.fsf@gnu.org> (Eli Zaretskii's message of "Fri, 27 Nov 2015 19:58:48 +0200")
Eli Zaretskii <eliz@gnu.org> writes:
>> From: phillip.lord@russet.org.uk (Phillip Lord)
>> Date: Fri, 27 Nov 2015 17:23:11 +0000
>>
>> I debugged Emacs core the other day for the first time. As I have no
>> experience with C, GDB or any of the Emacs tooling, I found this an
>> uphill struggle, so I have written up a short "how-to-debug" Emacs file.
>
> Thanks. Some of this is already in etc/DEBUG, other parts belong to
> basic GDB operation, so I'm not sure we should describe that in
> Emacs. I suggest that you read etc/DEBUG, if you didn't already, and
> suggest changes to that file where you think it leaves something
> important uncovered.
With etc/DEBUG, I am worried not about what it does not say, but what it
does say. It's really very dense. For example, it starts with a
description of what src/.gdbinit does (at which point I still don't know
how to launch the debugger). Then has a very heavy section on compiler
flags which includes a section on DWARF.
> More specifically, how about a preamble section at the beginning of
> etc/DEBUG, named something like "If you are new to debugging Emacs",
> and describing the preliminaries you think are important? You can
> refer to later sections instead of repeating what they say.
Yes, that was sort of the idea. Personally, I'd not be too worried about
repeating things. I realise that this adds to the maintainance burden,
but references to later sections make for harder reading.
I'll try and simplify what I wrote a bit further. Basically, I am after
the debugging hello world -- make a breakpoint, get the value of a
LispObject.
Phil
next prev parent reply other threads:[~2015-11-27 22:05 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-11-27 17:23 Debugging Emacs Phillip Lord
2015-11-27 17:48 ` Karl Fogel
2015-11-27 21:53 ` Phillip Lord
2015-11-28 7:50 ` Eli Zaretskii
2015-11-27 17:58 ` Eli Zaretskii
2015-11-27 18:15 ` Eli Zaretskii
2015-11-27 22:05 ` Phillip Lord [this message]
2015-11-28 7:56 ` Eli Zaretskii
2015-11-28 19:39 ` Phillip Lord
2015-11-28 20:38 ` Eli Zaretskii
2015-11-28 21:35 ` Phillip Lord
2015-11-29 18:13 ` Stephen Leake
2015-11-29 19:25 ` John Wiegley
2015-11-29 21:26 ` Phillip Lord
2015-11-29 19:46 ` Marcin Borkowski
2015-11-30 13:33 ` Nicolas Richard
2015-12-05 10:55 ` Eli Zaretskii
2015-12-07 9:51 ` Phillip Lord
2015-12-07 16:34 ` Eli Zaretskii
2015-12-07 18:18 ` Stephen Leake
2015-12-07 18:30 ` Eli Zaretskii
2015-12-10 22:36 ` Phillip Lord
2015-12-11 7:39 ` Eli Zaretskii
2015-12-11 15:47 ` Phillip Lord
2015-11-28 8:41 ` Marcin Borkowski
2015-11-28 9:47 ` 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=87lh9jp073.fsf@russet.org.uk \
--to=phillip.lord@russet.org.uk \
--cc=eliz@gnu.org \
--cc=emacs-devel@gnu.org \
/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.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.