[Top][All Lists]

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

Re: Can't build previous versions of Emacs?

From: Karl Berry
Subject: Re: Can't build previous versions of Emacs?
Date: Sat, 16 Jul 2022 14:59:38 -0600

    in 2030 to download and run an Emacs-21 to see how it was back then :-)

FWIW, I was able to compile e21 on a current x86_64 machine running 
Alma Linux 8 (I doubt the os matters much) with the attached.
Copied in m/amdx86-64.h from 22.3 as a starting point. I didn't try to
include X support, since I had no interest in it.

My configure invocation (largefile does not matter).
  env CFLAGS='-g -w' ./configure --prefix=/usr/local/gnu/emacs-21.4 
--without-pop --without-gif --without-gpm --without-x --with-x-toolkit=no 
--without-xpm --without-jpeg --without-tiff --without-png 
--without-toolkit-scroll-bars --without-xim --disable-largefile

I found it necessary to remove all the \-newlines from the Makefile.in's
since I could not find any cpp option to preserve them other than
-traditional, which then breaks the actual compilation in myriad ways
wrt system headers, etc.:
  (cd src; mkdir ORIG; cp Makefile.in ORIG;
   perl -p -e 's/\\\n//' ORIG/Makefile.in >Makefile.in)
  # same for lib-src.

The normal make fails at the final dump; it gets a seg fault.  But when
running temacs under gdb, with -batch -l loadup dump, it works. Did not
try to investigate, was just happy to have the binary.

Compilation with -O2 causes temacs to die immediately in malloc.
So just -g. Used the distro compiler:
gcc version 8.5.0 20210514 (Red Hat 8.5.0-10) (GCC) 

Lots of memory failures along the way.
This set of configure outcomes is what seems to work:
  Should Emacs use the GNU version of malloc?             yes
  Should Emacs use a relocating allocator for buffers?    no
  Should Emacs use mmap(2) for buffer allocation?         yes

As a bonus for getting through it, the maximum buffer size is increased
to somewhere around 1GB (by experimentation).

Happy historical Emacsing,

Attachment: emacs-21.4a-x86_64-almalinux8.diff
Description: Binary data

reply via email to

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