GNU bug report logs - #51999
28.0.60; temacs with native-compilation fails unless invoked from src

Previous Next

Package: emacs;

Reported by: Eli Zaretskii <eliz <at> gnu.org>

Date: Sat, 20 Nov 2021 14:33:02 UTC

Severity: normal

Found in version 28.0.60

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Eli Zaretskii <eliz <at> gnu.org>
To: akrl <at> sdf.org
Cc: 51999 <at> debbugs.gnu.org
Subject: bug#51999: 28.0.60; temacs with native-compilation fails unless invoked from src
Date: Sat, 20 Nov 2021 17:12:03 +0200
>   . On GNU/Linux:
> 
>     - cd src && ./temacs -Q -nw works as expected
>     - ./src/temacs -Q -nw fails with this error message:
> 
>       Symbol's function definition is void: internal-echo-keystrokes-prefix
> 
>   . On MS-Windows:
> 
>     - cd src && ./temacs -Q -nw works as expected
>     - ./src/temacs -Q -nw works, but loads *.elc files instead of *.eln
> 
> In all the cases, temacs was invoked from the build directory.  I
> don't understand why the different behavior.  Any ideas?

Answering myself: here's the reason:

    DEFVAR_LISP ("native-comp-eln-load-path", Vnative_comp_eln_load_path,
		 doc: /* List of eln cache directories.

  If a directory is non absolute is assumed to be relative to
  `invocation-directory'.
  `comp-native-version-dir' value is used as a sub-folder name inside
  each eln cache directory.
  The last directory of this list is assumed to be the system one.  */);

    /* Temporary value in use for bootstrap.  We can't do better as
       `invocation-directory' is still unset, will be fixed up during
       dump reload.  */
    Vnative_comp_eln_load_path = Fcons (build_string ("../native-lisp/"), Qnil);

So invoking temacs from any directory that is not a sibling of
native-lisp will fail to find the *.eln files.




This bug report was last modified 3 years and 181 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.