I tried building today (with a newly checked out source tree) for
i586-pc-mingw32. I turned on the portable dumper. Instead of temacs.exe
being built, the first thing built was xemacs.exe (interesting, but I'll go
with the flow).
However, when the next step of the compiler tried to run xemacs.exe to load
update-elc.el, it died.
cd ./src && make all
make[1]: Entering directory `/xemacs/xemacs-21.2/src'
gcc -g -O3 -Wall -Wno-switch -Wpointer-arith -Winline -Wmissing-prototypes
-Wshadow -Wl,-export-dynamic -I/xemacs/xemacs-21.2/src -o xemacs
abbrev.o alloc.o blocktype.o buffer.o bytecode.o callint.o callproc.o
casefiddle.o casetab.o chartab.o cmdloop.o cmds.o console.o console-stream.o
data.o device.o dired.o doc.o doprnt.o dynarr.o editfns.o elhash.o emacs.o
eval.o events.o debug.o tests.o filelock.o ntplay.o nt.o ntheap.o ntproc.o
dired-msw.o dumper.o scrollbar-msw.o menubar-msw.o toolbar-msw.o
dialog-msw.o console-msw.o device-msw.o event-msw.o frame-msw.o
objects-msw.o select-msw.o redisplay-msw.o glyphs-msw.o gui-msw.o dgif_lib.o
gif_io.o menubar.o scrollbar.o dialog.o toolbar.o file-coding.o realpath.o
getloadavg.o inline.o sysdll.o emodules.o process-nt.o event-stream.o
extents.o faces.o fileio.o filemode.o floatfns.o fns.o font-lock.o frame.o
general.o glyphs.o glyphs-eimage.o glyphs-widget.o gui.o gutter.o hash.o
imgproc.o indent.o insdel.o intl.o keymap.o line-number.o lread.o lstream.o
macros.o marker.o md5.o minibuf.o objects.o opaque.o print.o process.o
profile.o
rangetab.o redisplay.o redisplay-output.o regex.o search.o select.o
signal.o sound.o specifier.o strftime.o symbols.o syntax.o sysdep.o undo.o
widget.o window.o win32.o xemacs_res.o lastfile.o gmalloc.o free-hook.o
vm-limit.o dump-id.c -ltiff -ljpeg -lz -mno-cygwin -mwindows -lwinmm
-lwsock32 -lshell32 -lgdi32 -luser32 -lcomdlg32 -lcomctl32 -lwinspool
./xemacs -nd -batch -l /xemacs/xemacs-21.2/src/../lisp/update-elc.el
make[1]: *** [update-elc.stamp] Error 3
make[1]: Leaving directory `/xemacs/xemacs-21.2/src'
make: *** [src] Error 2
[18:57:19] /xemacs/xemacs-21.2> rm temacs.exe
Here's the gdb backtrace. It looks like malloc didn't work:
[18:58:20] /xemacs/xemacs-21.2> gdb -nw ./src/xemacs
GNU gdb 5.0
Copyright 2000 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i686-pc-cygwin"...
(gdb) r -nd -batch -l /xemacs/xemacs-21.2/lisp/update-elc.el
Starting program: /xemacs/xemacs-21.2/./src/xemacs.exe -nd -batch -l
/xemacs/xemacs-21.2/lisp/update
-elc.el
Program received signal SIGTRAP, Trace/breakpoint trap.
0x77f9f9e0 in ?? ()
(gdb) where
#0 0x77f9f9e0 in ?? ()
#1 0x44ee19 in signal_1 (sig=0, data=52467728) at eval.c:1879
#2 0x457676 in signal_simple_error (
reason=0x548940 "Internal error: lstream has no writer", frob=52457472)
at eval.c:2052
#3 0x548a44 in Lstream_flush_out (lstr=0x3207000) at lstream.c:288
#4 0x54a06b in Lstream_flush (lstr=0x3207000) at lstream.c:371
#5 0x43d145 in emacs_doprnt_string_va (
format_nonreloc=0x4030d0 "%s\nKilling some buffers may delay running out
of memory.\nHowever, ce
rtainly by the time you receive the 95%% warning,\nyou should clean up, kill
this Emacs, and start a
new one.", format_reloc=0,
format_length=-1, vargs=0x2b0fd78 "E\024\\") at doprnt.c:847
#6 0x456174 in warn_when_safe (class=0, level=0,
fmt=0x4030d0 "%s\nKilling some buffers may delay running out of
memory.\nHowever, certainly by t
he time you receive the 95%% warning,\nyou should clean up, kill this Emacs,
and start a new one.")
at eval.c:5305
#7 0x409d65 in malloc_warning (
str=0x5c14c8 "Warning: past 85% of memory limit") at alloc.c:214
#8 0x5c1680 in check_memory_limits () at vm-limit.c:90
#9 0x5bf914 in morecore (size=4096) at gmalloc.c:439
#10 0x5bfd33 in malloc (size=4096) at gmalloc.c:659
#11 0x5bfba9 in malloc (size=2036) at gmalloc.c:603
#12 0x405f2a in make_string_nocopy (contents=0x5a38cc "nil", length=3)
---Type <return> to continue, or q <return> to quit---
at alloc.c:353
#13 0x5a3958 in init_symbols_once_early () at symbols.c:3169
#14 0x447fa7 in xemacs_21_2_b35_i586_pc_mingw32 (argc=5, argv=0x2b19418,
envp=0x2b150b0, restart=0) at emacs.c:1146
#15 0x44bd58 in main (argc=5, argv=0x2b19418, envp=0x2b150b0) at
emacs.c:2537
(gdb)