Guile problem building 2.6.3 from git on Ubuntu 12.04

Colin Law clanlaw at gmail.com
Mon May 12 16:00:28 EDT 2014


On 12 May 2014 18:49, John Ralls <jralls at ceridwen.us> wrote:
>
> On May 12, 2014, at 9:24 AM, Geert Janssens <janssens-geert at telenet.be> wrote:
>
>> On Sunday 11 May 2014 11:25:20 Colin Law wrote:
>>> On 11 May 2014 10:34, Colin Law <clanlaw at gmail.com> wrote:
>>>> Building from the tag 2.6.3 in git on Ubuntu 12.04 I have this error
>>>> during configure
>>>>
>>>> checking for guile-1.8 >= 1.8.5... yes
>>>> checking GUILE_CFLAGS... -pthread
>>>> checking GUILE_LIBS... -Wl,-Bsymbolic-functions -lguile -lgmp
>>>> -lcrypt -lm -lltdl ../configure: line 20528: syntax error near
>>>> unexpected token `gnc_have_guile_www,'
>>>> ../configure: line 20528: `
>>>> GUILE_MODULE_AVAILABLE(gnc_have_guile_www,(www main))'
>>>>
>>>> I have guile-1.8, guile-1.8-dev and swig installed.
>>>> Google suggested that this could be caused by
>>>> /usr/share/aclocal/guile.m4 not being found, but this file is
>>>> present.
>>> Strange, I installed guile-2.0 and guile-2.0-dev (which removed
>>> 1.8-dev) and tried again.  This time it said that swig was to early a
>>> version and since a later one is not available in the repos I removed
>>> 2.0 again and a couple of packages that were installed automatically
>>> and put back 1.8 and now it configures ok.  So what was going on there
>>> I do not know.
>>>
>>> Colin
>>
>> That's odd indeed... But good to know what the workaround is. Perhaps
>> installing guile-2.0 does something to the system configuration that is
>> omitted from the guile-1.8 packages ?
>
> The fact that the m4 function name GUILE_MODULE_AVAILABLE was even present in configure means that the macro wasn't available when configure was built by autoconf. When it's available and autogen.sh works correctly, the result is
>
>                               { $as_echo "$as_me:${as_lineno-$LINENO}: checking if (www main) is available" >&5
> $as_echo_n "checking if (www main) is available... " >&6; }
>
>   $GUILE -c "(use-modules (www main)) (exit ((lambda () 0)))" > /dev/null 2>&1
>   gnc_have_guile_www=$?
>
>           if test "$gnc_have_guile_www" = "0" ; then gnc_have_guile_www=yes ; else gnc_have_guile_www=no ; fi
>           { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gnc_have_guile_www" >&5
> $as_echo "$gnc_have_guile_www" >&6; }
>
>
> One possible scenario was that Colin ran autogen.sh and configure, was told that he needed guile-1.8-dev, installed it, and re-ran configure without rerunning autogen.sh.

I don't think that was it, I already had 1.8-dev installed.

> After uninstalling guile-1.8* in favor of guile-2.0*, he *did* re-run autogen.sh which built a correct configure. Another possibility is that the guile.m4 in the guile-1.8-dev package is defective, lacking the GUILE_MODULE_AVAILABLE macro, and that it was supplied when Colin installed guile-2.0-dev.

Something along those lines possibly.  Though I have tried removing
guile.m4 and reinstalling guile-1.8-dev then running autogen and
configure and all is well.  The machine has been around for a long
time and has had various upgrades and so on over the years, so
possibly just something had got messed up.  Quite possibly just
re-installing guile-1.8-dev would have fixed it.  Probably we will
never know.

Colin



More information about the gnucash-user mailing list