Subject: Re: bug#71775: 31.0.50; Symbol's function definition is void: file-name-sans-extension

From: Michael Welsh Duggan <[email-masked]>
Date: Tue, 25 Jun 2024 16:08:39 -0400

Eli Zaretskii <[email-masked]> writes:

>> From: Michael Welsh Duggan <[email-masked]>
>> Date: Tue, 25 Jun 2024 10:12:12 -0400
>> 
>> 
>> After building and installing from master, from an empty build
>> directory, without the -j to make, I cannot run emacs from the installed
>> binary.
>> 
>>     $ emacs -Q
>>     Loading loadup.el (source)...
>>     Dump mode: nil
>>     Using load-path (/usr/local/share/emacs/31.0.50/site-lisp
>> /usr/local/share/emacs/site-lisp /usr/local/share/emacs/31.0.50/lisp
>> /usr/local/share/emacs/31.0.50/lisp/emacs-lisp
>> /usr/local/share/emacs/31.0.50/lisp/progmodes
>> /usr/local/share/emacs/31.0.50/lisp/language
>> /usr/local/share/emacs/31.0.50/lisp/international
>> /usr/local/share/emacs/31.0.50/lisp/textmodes
>> /usr/local/share/emacs/31.0.50/lisp/vc)
>>     Loading emacs-lisp/debug-early...
>>     Symbol's function definition is void: file-name-sans-extension
>> 
>> This problem does not happen if I run emacs from its build directory.
>
> This seems to indicate that Emacs can't find its pdumper file.  Is it
> where it's supposed to be?  Are any of the installation directories
> symlinks, perhaps?

It appears to be in the right location.  For me the file is
/usr/local/libexec/emacs/31.0.50/x86_64-pc-linux-gnu/emacs-7613461fe6ed74f6f87f777c9c08b4ef65bda3f590e4a424624ddfd514cb2f81.pdmp,
which is consistent with prior installations of emacs.  None of the
directories are symlinks.

> Also, are you sure you cleaned up the source tree before building?
> Suggest to try "git clean -fdx" or a fresh clone.

It looks like this did the trick.  I am embarrassed that I did not try
this.  I'm so used to out-of-tree builds not changing (much) in the
source directory.  Sorry for the report, and you can close this bug.
(Though it might be worth putting something like this in PROBLEMS.)

-- 
Michael Welsh Duggan
([email-masked])