Subject: bug#46790: 28.0.50; make install with native-comp branch

From: Thierry Volpiatto <[email-masked]>
Date: Sat, 10 Apr 2021 07:17:09 +0200

Eli Zaretskii <[email-masked]> writes:

>> From: Thierry Volpiatto <[email-masked]>
>> Date: Fri, 26 Feb 2021 08:35:30 +0100
>> 
>> giving a try to native-comp branch.
>> 
>> I install Emacs generaly with:
>> 
>> make install bindir=/usr/local/sbin/emacs-28.0.50 infodir=/usr/local/share/info-28.0.50
>> 
>> This always worked fine.  However with native-comp branch, I have to
>> manually add a symlink of "/usr/local/lib/emacs/28.0.50/native-lisp/" to
>> "/usr/local/sbin" otherwise I endup with an error:
>> 
>> thierry@IPadS340:/usr/local/sbin/emacs-28.0.50$ ls
>> ctags  ebrowse  emacs  emacs-28.0.50  emacsclient  etags
>> thierry@IPadS340:/usr/local/sbin/emacs-28.0.50$ ./emacs-28.0.50
>> emacs: /usr/local/sbin/emacs-28.0.50/../native-lisp/28.0.50-40158ec0/window-0d1b8b93-738411b0.eln: cannot open shared object file: No such file or directory
>> thierry@IPadS340:/usr/local/sbin/emacs-28.0.50$ ./emacs
>> emacs: /usr/local/sbin/emacs-28.0.50/../native-lisp/28.0.50-40158ec0/window-0d1b8b93-738411b0.eln: cannot open shared object file: No such file or directory
>
> Hmm... I'm not sure we can resolve this in any other way, although we
> should try.

I am sure you will find some makefile magic for this.

> What worked for you with previous versions was just a side effect of
> the implementation detail: how Emacs finds the files it needs when it
> starts.  The *.eln files bring more restrictions to the table, and it
> could very well be that the symlink trick will be the only practical
> solution to such a non-standard installation.

This not really a non standard installation, it is documented in INSTALL
since always, I use this installation to manage different Emacs
versions (the executables in sbin/emacs-xxx are symlinked in bin).

I am not sure also if everything is working properly with a "standard"
installation, i.e. in /usr/local/bin, is in this case the native-lisp
dir found?

> A possible solution is to set EMACSNATIVELOADPATH in the environment.

Didn't know this env var.

> Alternatively, you could modify your Emacs to look in the correct
> directory by default.

Don't know how to do this, anyway all methods should be documented.

Thanks.

-- 
Thierry