[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#13775: 24.3.50; Omissions in documentation for crash reporting

From: Dmitry Gutov
Subject: bug#13775: 24.3.50; Omissions in documentation for crash reporting
Date: Fri, 22 Feb 2013 05:31:55 +0400
User-agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130215 Thunderbird/17.0.3

On 21.02.2013 21:24, Eli Zaretskii wrote:
I'm not sure your expectations can be met with any reasonable effort.

If you think that these complaints are not particularly important, feel free to close the bug.
Obviously, I've solved all items here for myself already.

There's no way we can teach everybody the basics of GNU-style
configure scripts, including how to discover the available switches
and override compiler and linker options.  You need to learn that\

If by discovering switches you mean calling ./configure --help, then it wasn't my problem.
I've missed the --enable-checking switch, but that was later.

The ./configure --help output tells how to override switches in general, my complaint is about insufficient detail. Is the "Some influential environment variables" part provided by autoconf or somesuch? I haven't seen this specific message before.

elsewhere.  In general, if you cannot figure out how to do something,
just ask, and you _will_ be helped.

Thanks, I don't doubt that.

Some answers below, because most of this info is available, you just
need to know how to find it.

1. Calling `xbacktrace' requires src/.gdbinit to be loaded. It
a) requires the user to run gdb exactly from src/ (not `gdb src/emacs'),

The file etc/DEBUG tells you that at the beginning:

   ** When you debug Emacs with GDB, you should start it in the directory
   where the executable was made.  That directory has a .gdbinit file
   that defines various "user-defined" commands for debugging Emacs.
   (These commands are described below under "Examining Lisp object
   values" and "Debugging Emacs Redisplay problems".)

Um, yes, I read that. Maybe I should've skipped this part of the complaint. But is this exact wording ("the directory where the executable was made") important? If it just said "./src", that would be more obvious.

b) requires them to modify the `auto-load safe-path', or that .gdbinit
is ignored.

This "feature" entered GDB only recently.  Versions of GDB before 7.5
don't need that, and will barf if you use this command.  I don't see
any reasonable way of dealing with this without confusing newbies even
more (while veteran GDB users already know how to negotiate this

If the feature isn't considered for removal, this argument will become less and less important over time. And the odds of a newbie being confused by safe-path will approach 100%.

I'm not specifically asking to list the exact commands or ~/.gdbinit contents to work around safe-path. Maybe just mention the feature and, optionally, suggest consulting GDB manual, if that isn't obvious already? But specifying exactly what to do if GDB version is >= 7.5 would also work.

2. "Compile without optimizations" - how do I do that? `configure
--help' doesn't seem to show any pertinent options. ...but wait, it says
I can override the choices made by the script.

Yes, it says near the end how to specify compiler switches.

a) Do I set the variable when calling `make', or do I have to re-run
./configure? Not obvious, the answer is "the latter".

Actually, both will work.

Not exactly.

'CFLAGS="-g3" ./configure' works.
'CFLAGS="-g3" make' doesn't.

'make CFLAGS="-g3"' does work, but AFAIK that's not the usual way of binding an environment variable value.

b) I don't know the choice the script made, how do I not break
anything by overriding it?

You just need to know, or ask.  It is not reasonable to expect Emacs
documentation to repeat the entire compiler manual, or large portions

I think "compile without optimizations" or "compile for debugging" is a sufficiently common special case to warrant listing the recommended command somewhere in etc/DEBUG. That will take a few lines at the most.

3. In #13749 (which caused me to write this), Paul also suggests using
-DENABLE_CHECKING. If I'm not mistaken, this variable isn't documented

As Andreas points out, this is in "./configure --help".

Indeed, thanks for that.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]