[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: configuring apps for guile
From: |
Ludovic Courtès |
Subject: |
Re: configuring apps for guile |
Date: |
Mon, 17 Feb 2020 10:21:50 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) |
Hi,
Matt Wette <address@hidden> skribis:
> On 2/16/20 9:57 AM, Ludovic Courtès wrote:
>> Hi,
>>
>> Matt Wette <address@hidden> skribis:
>>
>>> What if you have a system that gives this (e.g., Ubuntu 18.04):
>>>
>>> mwette$ /usr/bin/guile -c "(display (assq-ref %guile-build-info
>>> 'prefix)) (newline)"
>>> /usr
>>>
>>> mwette$ /usr/bin/guile -c "(display (%site-ccache-dir)) (newline)"
>>> /usr/lib/x86_64-linux-gnu/guile/2.2/site-ccache
>>>
>>> I'm not sure that guile will find .go files installed in
>>> /usr/lib/guile/2.2/site-ccache.
>> I guess you would run:
>>
>> ./configure --prefix=/usr --libdir=/usr/lib/x86_64-linux-gnu
>>
>> in that case.
>>
>> Does that make sense?
>>
>> Ludo’.
> Yes, but some naive person (like me, for example) would never guess
> that is what is required. (I ran into this installing bytestructures,
> IIRC).
> And the info is in pkgconfig/guile-2.2.pc, but still requires chasing down
> that resource. Still thinking about it ...
Perhaps what ‘configure.ac’ could do is provide a hint when there’s a
mismatch.
In some packages I have:
GUILE_SITE_DIR
pkgdatadir="$datadir/$PACKAGE_NAME"
if test "x$guilemoduledir" = "x"; then
guilemoduledir="${datarootdir}/guile/site/$GUILE_EFFECTIVE_VERSION"
guileobjectdir="${libdir}/guile/$GUILE_EFFECTIVE_VERSION/site-ccache"
else
guileobjectdir="$guilemoduledir"
fi
AC_SUBST([guilemoduledir])
AC_SUBST([guileobjectdir])
if test "$guilemoduledir" != "$GUILE_SITE"; then
# Guile won't be able to locate the module "out of the box", so
# warn the user.
AC_MSG_WARN([`guilemoduledir' ($guilemoduledir) is different from
`GUILE_SITE' ($GUILE_SITE).])
AC_MSG_WARN([Make sure to adjust the `GUILE_LOAD_PATH' environment
variable accordingly,])
AC_MSG_WARN([or re-run `configure' with
`--with-guilemoduledir=$GUILE_SITE'.])
fi
The bottom line is that ‘configure’ can’t guess what the user wants.
Ludo’.