Guile problem building 2.6.3 from git on Ubuntu 12.04

John Ralls jralls at ceridwen.us
Mon May 12 13:49:47 EDT 2014


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. 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.

Regards,
John Ralls




More information about the gnucash-user mailing list