[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: bootstrap error
From: |
Eli Zaretskii |
Subject: |
Re: bootstrap error |
Date: |
Fri, 27 Jan 2006 22:37:31 +0200 |
> Date: Thu, 26 Jan 2006 12:21:01 +0200 (IST)
> From: Alexander Klimov <address@hidden>
> cc: address@hidden
>
> Loading international/ucs-tables (source)...
> * not found (17), obtain more space: 327680
> * obtain(548012032, 327680), heap = 539798416
> * not found (18), obtain more space: 327680
> * obtain(548012032, 327680), heap = 539798416
> [...]
> * not found (277), obtain more space: 327680
> * obtain(548012032, 327680), heap = 539798416
> * not found (278), obtain more space: 327680
> * obtain(548012032, 327680), heap = 539798416
> mv -f emacs.exe bootstrap-emacs.exe
> mv: cannot stat `emacs.exe': No such file or directory
> make: *** [bootstrap-emacs.exe] Error 1
>
> Any ideas? BTW, this host has cygwin1.dll 1.5.19-4 (build date
> 2006-01-20 13:28), gcc 3.4.4, and Win2K.
After some more tinkering, I think I know why the error message about
autoloading define-minor-mode doesn't show during bootstrapping. The
function eval.c:do_autoload, which issues that message, does this:
/* This is to make sure that loadup.el gives a clear picture
of what files are preloaded and when. */
if (! NILP (Vpurify_flag))
error ("Attempt to autoload %s while preparing to dump",
SDATA (SYMBOL_NAME (funname)));
So this message and the resulting abort should only happen when
purify-flag is non-nil. However, loadup.el does this:
(if (or (equal (nth 3 command-line-args) "bootstrap")
(equal (nth 4 command-line-args) "bootstrap")
;; in case CANNOT_DUMP
(equal (nth 0 command-line-args) "../src/bootstrap-emacs"))
(let ((dir (car load-path)))
;; We'll probably overflow the pure space.
(setq purify-flag nil)
(setq load-path (list dir
(expand-file-name "emacs-lisp" dir)
(expand-file-name "language" dir)
(expand-file-name "international" dir)
(expand-file-name "textmodes" dir)))))
So during bootstrap, purify-flag is nil, and the error never happens.
So now the question is, why doesn't this work for Cygwin? Doesn't
Cygwin support dumping or something? is purify-flag indeed nil during
bootstrap of the Cygwin port? or maybe some of your investigations
were not in the bootstrap context, so purify-flag was non-nil?
And another puzzle: if autoloading define-minor-mode aborts the Cygwin
bootstrap, why doesn't that happen earlier, in help.el, for example,
which also uses define-minor-mode?
Finally, just to make sure we are not chasing a wild goose, could you
please see if the message about autoloading define-minor-mode is
indeed the reason for the abort?
- bootstrap error, Alexander Klimov, 2006/01/25
- Re: bootstrap error, Eli Zaretskii, 2006/01/25
- Re: bootstrap error, Alexander Klimov, 2006/01/26
- Re: bootstrap error, Eli Zaretskii, 2006/01/27
- Re: bootstrap error, Alexander Klimov, 2006/01/28
- Re: bootstrap error, Eli Zaretskii, 2006/01/28
- Re: bootstrap error, Alexander Klimov, 2006/01/29
- Re: bootstrap error, Eli Zaretskii, 2006/01/29
- Re: bootstrap error, Alexander Klimov, 2006/01/30
- Re: bootstrap error, Alexander Klimov, 2006/01/29
- Re: bootstrap error,
Eli Zaretskii <=