unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* build error
@ 2007-09-14  2:36 d.henman
  2007-09-15  8:04 ` Richard Stallman
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: d.henman @ 2007-09-14  2:36 UTC (permalink / raw)
  To: emacs-devel


I would like advice on how to interpret the following emacs build time error:

Subject cvs date:  Version September 14, 9:25 JST

--- start of paste

In end of data:
bytecomp.el:4255:1:Warning: the function `compilation-forget-errors' is not
    known to be defined.
Wrote /usr/cvs/emacs/lisp/emacs-lisp/bytecomp.elc
Compiling /usr/cvs/emacs/lisp/subr.el
Fatal error (6)/bin/sh: line 4:  3088 Aborted                 (core dumped) EMACSLOADPATH=/usr/cvs/emacs/lisp ../src/bootstrap-emacs.exe -batch --no-site-file --multibyte -f batch-byte-compile-if-not-done $el
make[2]: *** [compile] Error 1

--- end of paste

I get from this, that subr.el is the file being compliled when core is dumped, and
that this is a compiler fatal error #6 ?  or line #4 in some file (can't be the .el file)and 3088 being I don't now a line# or error #.

There is a "bootstrap-emacs.exe.stackdump"  being created in the lisp directory.


Thanks for any advice.
  Darel Henman

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: build error
  2007-09-14  2:36 build error d.henman
@ 2007-09-15  8:04 ` Richard Stallman
  2007-09-15 10:28 ` Eli Zaretskii
  2007-09-15 11:18 ` Eli Zaretskii
  2 siblings, 0 replies; 7+ messages in thread
From: Richard Stallman @ 2007-09-15  8:04 UTC (permalink / raw)
  To: d.henman; +Cc: emacs-devel

    Compiling /usr/cvs/emacs/lisp/subr.el
    Fatal error (6)/bin/sh: line 4:  3088 Aborted                 (core dumped) EMACSLOADPATH=/usr/cvs/emacs/lisp ../src/bootstrap-emacs.exe -batch --no-site-file --multibyte -f batch-byte-compile-if-not-done $el

This means Emacs crashed while compiling subr.el.  Next step is to use
a debugger and figure out why it crashed.  See etc/DEBUG for some
helpful hints.

It may help also to defenestrate your computer.
Either throw Windows out of your computer, or throw
your computer out the window!

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: build error
  2007-09-14  2:36 build error d.henman
  2007-09-15  8:04 ` Richard Stallman
@ 2007-09-15 10:28 ` Eli Zaretskii
  2007-09-15 10:56   ` Andreas Schwab
  2007-09-15 11:18 ` Eli Zaretskii
  2 siblings, 1 reply; 7+ messages in thread
From: Eli Zaretskii @ 2007-09-15 10:28 UTC (permalink / raw)
  To: d.henman; +Cc: emacs-devel

> From: "d.henman" <dhenman@gmail.com>
> Date: Fri, 14 Sep 2007 11:36:55 +0900
> cc: 
> 
> In end of data:
> bytecomp.el:4255:1:Warning: the function `compilation-forget-errors' is not
>     known to be defined.
> Wrote /usr/cvs/emacs/lisp/emacs-lisp/bytecomp.elc
> Compiling /usr/cvs/emacs/lisp/subr.el
> Fatal error (6)/bin/sh: line 4:  3088 Aborted                 (core dumped) EMACSLOADPATH=/usr/cvs/emacs/lisp ../src/bootstrap-emacs.exe -batch --no-site-file --multibyte -f batch-byte-compile-if-not-done $el
> make[2]: *** [compile] Error 1
> 
> --- end of paste
> 
> I get from this, that subr.el is the file being compliled when core is dumped, and
> that this is a compiler fatal error #6 ?

Yes.  Fatal error 6 is SIGABRT (see your signal.h header file), as the
"Aborted" part says.  If Emacs was aborted, it means that Emacs exited
abnormally, most probably via the call to the `abort' function.  The
Emacs sources routinely place the calls to that function where there
are situations that ``cannot happen'', in order to force a core dump
that can be debugged to find the reasons.

But it could also be that /bin/sh (presumably the Cygwin port of Bash)
was the one who aborted, in which case it's a more complicated problem
than just an Emacs bug.

>  or line #4 in some file (can't be the .el file)and 3088 being I don't now a line# or error #.

It should be line 4 in some shell script, perhaps generated by Make.
3088 is the PID of the process that crashed, I think.

> There is a "bootstrap-emacs.exe.stackdump"  being created in the lisp directory.

That's the Cygwin equivalent of the core dump file.  And it seems to
tell that it was Emacs who crashed, not Bash.

As Richard says, it's better to run bootstrap-emacs under GDB, place a
breakpoint in the `abort' function, and when it breaks, look around to
find out why it wound up calling `abort'.

Btw, isn't this a problem similar to what is described in etc/PROBLEMS
(look under "Building the Cygwin port for MS-Windows can fail with
some GCC versions")?  Are you sure you are using one of the GCC
versions named there as ``safe''?

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: build error
  2007-09-15 10:28 ` Eli Zaretskii
@ 2007-09-15 10:56   ` Andreas Schwab
  0 siblings, 0 replies; 7+ messages in thread
From: Andreas Schwab @ 2007-09-15 10:56 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: d.henman, emacs-devel

Eli Zaretskii <eliz@gnu.org> writes:

>> From: "d.henman" <dhenman@gmail.com>
>> Date: Fri, 14 Sep 2007 11:36:55 +0900
>> cc: 
>> 
>> In end of data:
>> bytecomp.el:4255:1:Warning: the function `compilation-forget-errors' is not
>>     known to be defined.
>> Wrote /usr/cvs/emacs/lisp/emacs-lisp/bytecomp.elc
>> Compiling /usr/cvs/emacs/lisp/subr.el
>> Fatal error (6)/bin/sh: line 4:  3088 Aborted                 (core dumped) EMACSLOADPATH=/usr/cvs/emacs/lisp ../src/bootstrap-emacs.exe -batch --no-site-file --multibyte -f batch-byte-compile-if-not-done $el
>> make[2]: *** [compile] Error 1
>> 
>> --- end of paste
>> 
>> I get from this, that subr.el is the file being compliled when core is dumped, and
>> that this is a compiler fatal error #6 ?
>
> Yes.  Fatal error 6 is SIGABRT (see your signal.h header file), as the
> "Aborted" part says.  If Emacs was aborted, it means that Emacs exited
> abnormally, most probably via the call to the `abort' function.  The
> Emacs sources routinely place the calls to that function where there
> are situations that ``cannot happen'', in order to force a core dump
> that can be debugged to find the reasons.
>
> But it could also be that /bin/sh (presumably the Cygwin port of Bash)
> was the one who aborted,

Definitely not.  The printed message clearly points at
bootstrap-emacs.exe as the culprit.

Andreas.

-- 
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE Linux Products GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany
PGP key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: build error
  2007-09-14  2:36 build error d.henman
  2007-09-15  8:04 ` Richard Stallman
  2007-09-15 10:28 ` Eli Zaretskii
@ 2007-09-15 11:18 ` Eli Zaretskii
  2 siblings, 0 replies; 7+ messages in thread
From: Eli Zaretskii @ 2007-09-15 11:18 UTC (permalink / raw)
  To: d.henman; +Cc: emacs-devel

> From: "d.henman" <dhenman@gmail.com>
> Date: Fri, 14 Sep 2007 11:36:55 +0900
> cc: 
> 
> In end of data:
> bytecomp.el:4255:1:Warning: the function `compilation-forget-errors' is not
>     known to be defined.
> Wrote /usr/cvs/emacs/lisp/emacs-lisp/bytecomp.elc
> Compiling /usr/cvs/emacs/lisp/subr.el
> Fatal error (6)/bin/sh: line 4:  3088 Aborted                 (core dumped) EMACSLOADPATH=/usr/cvs/emacs/lisp ../src/bootstrap-emacs.exe -batch --no-site-file --multibyte -f batch-byte-compile-if-not-done $el
> make[2]: *** [compile] Error 1

FWIW, this doesn't happen with the native Windows build, using today's
CVS HEAD.

Btw, the above looks strange: on the one hand it seems that you are
bootstrapping (because bootstrap-emacs.exe is invoked), but OTOH
during a bootstrap simple.el is NOT compiled after bytecomp.el.  Can
you tell what you were doing when this happened?  Also, which branch
of the CVS you were building?

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: build error
@ 2007-09-17 10:40 Angelo Graziosi
  2007-09-18  6:49 ` d.henman
  0 siblings, 1 reply; 7+ messages in thread
From: Angelo Graziosi @ 2007-09-17 10:40 UTC (permalink / raw)
  To: emacs-devel; +Cc: Eli Zaretskii, d.henman


d.henman wrote:

>
> ...
> Fatal error (6)/bin/sh: line 4:  3088 Aborted (core dumped)
>
>...


This happens often in bootstrapping Emacs on Cygwin!

My experience is that it does not depend on GCC version.

Some time changing the build directory helps. For exaple, instead of

  /tmp/emacs/build

one can tries

  /tmp/tmp1/tmp2/.../emacs/build


Other times, bootstrapping from an X-shell (xterm, urxvt) instead that
from the DOS-like shell (cygwin.bat), helps.

Obviously also updating CVS source helps!

For example, I am currently observing this: building Emacs with window.c,
cus-start.el dated Sep. 7 works fine from all Cygwin shells, starting
emacs 'emacs -nw'. But using the current version of those files gives

  Fatal error (6)/bin/sh: ... Aborted ...

starting emacs -nw from the DOS-like shell.

The fact is that the cited version of window.c differ only in spaces (a
different style of formatting the text) while cus-start.el are IDENTICAL!


This is the life of Emacs on Cygwin!


   Angelo.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: build error
  2007-09-17 10:40 Angelo Graziosi
@ 2007-09-18  6:49 ` d.henman
  0 siblings, 0 replies; 7+ messages in thread
From: d.henman @ 2007-09-18  6:49 UTC (permalink / raw)
  To: Angelo Graziosi; +Cc: Eli Zaretskii, d. henman, emacs-devel


Angelo,
  thanks for the information.  I downloaded the latest gcc, gcc-4.2-20070905
and was able to build up to my last  .../net/tramp problem, as of today.

  I also learned who to get cvs code for a specific date downloaed.  I was able to get my last successfull built, June 17, downloaded again.


Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> wrote:
> d.henman wrote:
> > Fatal error (6)/bin/sh: line 4:  3088 Aborted (core dumped)
> >...
> This happens often in bootstrapping Emacs on Cygwin!
> My experience is that it does not depend on GCC version.
> 
> Some time changing the build directory helps. For exaple, instead of
>   /tmp/emacs/build
> 
> one can tries
>   /tmp/tmp1/tmp2/.../emacs/build

I understand whay you are saying, but Gnu tools shouldn't be so fickle.
I've never had to build in a different directory, but I am now using a
....cvs/emacs/build-dir to do it, thinking it will be usefull to keep 
object files seperate from source files.  But, I don't see much merit in it yet.

> Other times, bootstrapping from an X-shell (xterm, urxvt) instead that
> from the DOS-like shell (cygwin.bat), helps.
Again, this should not be a pre-requisite, cygwin is posix compliant.  But, you never know...  I use Putty.  But, these are just shells and the Gnu autotools should not
be affected by it, but maybe they are.  This is possible concering coding systems possibly.


> Obviously also updating CVS source helps!
Yes.  There is no problem there.
 
> For example, I am currently observing this: building Emacs with window.c,
> cus-start.el dated Sep. 7 works fine from all Cygwin shells, starting
> emacs 'emacs -nw'. But using the current version of those files gives
> 
>   Fatal error (6)/bin/sh: ... Aborted ...
This problem has gone away..   At least for today's cvs for me, be it a code
correction or the newest gcc-4.2-20070905 built compiler.
 
> starting emacs -nw from the DOS-like shell.

I still get the tramp related build error.  Which I hope to find out why. 

> The fact is that the cited version of window.c differ only in spaces (a
> different style of formatting the text) while cus-start.el are IDENTICAL!

If so the program causing the probelem is not properly robust and needs to be corrected.  Hardcoding a count of whitespace is not, in my book, is not a good thing to do.
 
> This is the life of Emacs on Cygwin!
> 
>    Angelo.

Indeed.  But, cygwin tries very hard to be posix compliant.  It may be that some items of new emacs tries to use no posix compliant code, until found, by ... well you and I and others...  And also different versions of automake tools would have an effect
 on build processes.

Thanks Again,
  Darel Henman 

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2007-09-18  6:49 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-09-14  2:36 build error d.henman
2007-09-15  8:04 ` Richard Stallman
2007-09-15 10:28 ` Eli Zaretskii
2007-09-15 10:56   ` Andreas Schwab
2007-09-15 11:18 ` Eli Zaretskii
  -- strict thread matches above, loose matches on Subject: below --
2007-09-17 10:40 Angelo Graziosi
2007-09-18  6:49 ` d.henman

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).