1

I've been using pre-releases of emacs for quite some time. I check out the code using git from git://git.savannah.gnu.org/emacs.git and follow the instructions in INSTALL.txt . The last time that worked fine was with 24.0.50.1 according to my emacs "about" screen. Since then I have periodically tried updating my emacs 24 version, but compilation always fails (possibly in the self-test or bootstrapping parts) with the following error:

Loading button (compiled; note, source file is newer)...
Loading startup (compiled; note, source file is newer)...
Loading /usr/local/src/emacs/lisp/loaddefs.el (source)...
Symbol's function definition is void: replace-buffer-in-windows
make[1]: *** [bootstrap-emacs] Error 1
make[1]: Leaving directory `/usr/local/src/emacs/src'
make: *** [src] Error 2

It's been like this for months. I've been googling regularly to see if there are any solutions/workarounds, but I find nothing. Am I the only one getting hit with this, and if so any suggestions for workarounds? It's not like I absolutely have to have the latest pre-release of emacs 24, but I would still like to figure out why I can no longer compile it, and why it seems nobody else is getting hit with the error (or aren't mentioning it anywhere where google can pick it up).

Update: This has happened on a Ubuntu 11.10 Desktop system, and now on the 12.04 betas, all x64.

4
  • What system are you trying to compile on? Any special compiler switches? Mar 13, 2012 at 10:32
  • I just tested on an x64 Ubuntu server. ./autogen.sh && ./configure && make spits out an emacs binary with no complaints. Mar 13, 2012 at 10:54
  • try git clean -xdf to make sure get rid off old config.status and any other.
    – kindahero
    Mar 14, 2012 at 7:00
  • Also see Minimal emacs24 installation on ubuntu? It provides instructions on building Emacs with a small footprint.
    – jww
    Feb 9, 2016 at 3:45

2 Answers 2

1

Cloning the latest version into a new directory, rather than doing an "in-place" pull (followed by make distclean, ./autogen.sh, ./configure, make) seems to solve it. So there has to be something left by earlier compilation processes for earlier versions that mess it up in my case.

So if you have similar problems, make sure you try a "clean" checkout into a fresh directory before giving up.

2
  • cloning again not good for the servers and git is smart to handle the your copy. git clean -xdf. by the way I pull from github.com/emacsmirror/emacs.git to avoid pressure on gnu servers
    – kindahero
    Mar 14, 2012 at 7:05
  • I'll give the git clean command a try. But just to be precise, I only cloned the first time, and then updated using pull. Mar 17, 2012 at 21:37
1

This happened to me. It seemed there were some old elisp compilation artifacts which were not being removed by make clean. I fixed it with

find . -name '*.elc' -print0 | xargs -0 rm -f
1
  • Beware, you always want to use print0 for find and -0 for xargs to be safe, or even use find … -exec rm -f '{}'.
    – slhck
    May 18, 2012 at 8:58

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .