all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Stefan Monnier <monnier@iro.umontreal.ca>
To: "Lennart Borgman \(gmail\)" <lennart.borgman@gmail.com>
Cc: Emacs Devel <emacs-devel@gnu.org>, Jason Rumney <jasonr@gnu.org>
Subject: Re: Crashes on w32 and debugging
Date: Thu, 28 Feb 2008 21:02:13 -0500	[thread overview]
Message-ID: <jwvejaw5xmc.fsf-monnier+emacs@gnu.org> (raw)
In-Reply-To: <47C75221.2030708@gmail.com> (Lennart Borgman's message of "Fri,  29 Feb 2008 01:30:25 +0100")

>>> I looked in the documentation for how to start Emacs under gdb, but
>>> I can't find anything about it in nt/INSTALL.
>> 
>> 1. Rebuild emacs after configure --no-opt (with optimisations on, stepping
>> through the code doesn't always act as you expect it, and some variables
>> cannot be inspected).

> Thanks Jason, but I need a little clarification. After configure I suppose
> I should do only "make bootstrap", but not "make install", or?

>> 2. cd ${emacs}/src          (where ${emacs} is your checkout
>> directory). This serves two purposes - it makes it easy for gdb to find
>> the emacs sources, and it also loads the .gdbinit in that directory, which
>> defines some useful functions for looking at Lisp variables
>> and backtraces.
>> 
>> 3. gdb oo/i386/emacs.exe
>> 
>> 4. Set any breakpoints using "break function_name" or "break
>> file.c:linenumber"
>> 
>> 5. run -Q

> I just started testing this, but with just "run". The crashes are
> intermittent so I have to just use it for a while.

>> 6. After the breakpoint is hit, step over functions with "next"/"n", or
>> step in with "step"/"s". Inspect C variables with "print VARIABLE", if it
>> is a lisp variable, "pr" immediately after the print will print its lisp
>> value. "bt" will get a backtrace, including the Lisp backtrace as well
>> as C.

> Should not these instructions go into nt/INSTALL or somewhere else?

Maybe not in INSTALL, but adding such information to etc/DEBUG would
probably be helpful,


        Stefan




  parent reply	other threads:[~2008-02-29  2:02 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-02-28  8:30 Crashes on w32 and debugging Lennart Borgman (gmail)
2008-02-28  8:57 ` Jason Rumney
2008-02-29  0:30   ` Lennart Borgman (gmail)
2008-02-29  0:35     ` Jason Rumney
2008-02-29 21:59       ` Lennart Borgman (gmail)
2008-02-29 23:16         ` Jason Rumney
2008-02-29 23:21           ` Jason Rumney
2008-02-29 23:33             ` Lennart Borgman (gmail)
2008-03-01 10:43             ` Lennart Borgman (gmail)
2008-03-01 10:52               ` Lennart Borgman (gmail)
2008-03-01 20:43                 ` Kim F. Storm
2008-03-02  1:01                   ` Lennart Borgman (gmail)
2008-03-01  9:44         ` Eli Zaretskii
2008-03-01  9:56           ` Jason Rumney
2008-02-29  2:02     ` Stefan Monnier [this message]
2008-02-29 10:40       ` Eli Zaretskii
2008-02-29  9:51 ` 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=jwvejaw5xmc.fsf-monnier+emacs@gnu.org \
    --to=monnier@iro.umontreal.ca \
    --cc=emacs-devel@gnu.org \
    --cc=jasonr@gnu.org \
    --cc=lennart.borgman@gmail.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.
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.