[email protected] (Ludovic Courtès) writes:
> Eli Zaretskii <[email protected]> skribis:
>
>>> From: Mark H Weaver <[email protected]>
>>> Cc: Eli Zaretskii <[email protected]>, "guile-user\@gnu.org"
>>> <[email protected]>
>>> Date: Fri, 23 Aug 2013 11:13:19 -0400
>>>
>>> Of course, ideally we would allow the entire Guile install to be freely
>>> relocatable, as Windows users have come to expect. This would require
>>> some help from a Windows developer.
>>
>> Why should this feature be limited to Windows builds of Guile? Why
>> not make it work for Posix platforms as well? Some other projects
>> already do, they use argv[0] and PATH search to find the place where
>> the executable is installed, and record relative file names from
>> there.
>
> This is not completely reliable when using argv[0] because argv[0] can
> be anything, though this can be work around on Linux-based systems with
> /proc/self/exe as done in
> <http://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/patches/guile-relocatable.patch>.
This finds the executable, but as I noted in a recent message, that
doesn't reliably lead to finding the location of libguile. I think
you're assuming that the executable is the standard 'guile' executable,
or at least that it's installed in the same prefix as libguile.
> Here’s a proposal: add a --enable-relocatable configure option, have it
> default to yes on MinGW and Cygwin (assuming there’s a method that works
> reliably on these), and default to no elsewhere; alternately, have it
> default to no everywhere.
>
> WDYT?
In theory, I like this idea. I just don't see how it can be made to
work reliably on POSIX systems.
Thanks,
Mark