guile-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: building guile from CVS


From: Bruno Haible
Subject: Re: building guile from CVS
Date: Fri, 21 Jan 2005 16:41:38 +0100
User-agent: KMail/1.5

Marius Vollmer wrote:
> > #    autoconf
> > #    autoheader && touch config.h.in
> > #    automake -a
>
> Isn't autoreconf supposed to do this?  If it doesn't, it's a bug in
> autoreconf, right?

Right. But when autoreconf failed, it left me clueless about what was
wrong.

> I have added a README.CVS file to CVS.

Thanks, that is a good place to put the instructions.

> > # 2) Use these commands to update guile-core:
> > #    $LIBTOOL_PREFIX/bin/libtoolize --force --copy --ltdl
> > #    cp $LIBTOOL_PREFIX/share/aclocal/libtool.m4 guile-config/libtool.m4
>
> I don't want to make Guile more complicated by catering to what could
> be called 'broken' installations of libtool, etc.

Then there are no working libtool releases that work for guile:
  - libtool 1.4.x create no libltdl/ directory,
  - libtool 1.5.x breaks 'aclocal', see 
http://sources.redhat.com/ml/automake/2003-04/msg00222.html
  - libtool 1.6.x are not released on ftp.gnu.org.

> You might bitch that it is too
> complicated to install libtool correctly, and you are probably right,
> but hey, I at least don't care. ;-)

If the README.CVS would tell which version of libtool is required, it would
be fine.

> Why do you want to add instructions to autogen.sh that contradict what
> autogen.sh is doing itself?  Shouldn't we fix autogen.sh, preferably?

OK. Then here's what I see when I use the instructions. (I have
autoconf 2.59, automake 1.9.4, gettextize 0.14.1 and libtoolize 1.4.3
in the PATH.) It is enough to leave a wizard clueless.

  $ ./autogen.sh
  You should add the contents of `/usr/share/aclocal/libtool.m4' to 
`aclocal.m4'.
  ls: libltdl/*: No such file or directory
  configure.in:57: warning: AC_CANONICAL_HOST invoked multiple times
  /packages/gnu/autoconf-2.59/tests/../lib/autoconf/specific.m4:393: AC_MINGW32 
is expanded from...
  configure.in:57: the top level
  configure.in:57: warning: AC_CANONICAL_HOST invoked multiple times
  /packages/gnu/autoconf-2.59/tests/../lib/autoconf/specific.m4:393: AC_MINGW32 
is expanded from...
  configure.in:57: the top level
  autoreconf: `configure.ac' or `configure.in' is required

I already debugged this, so here's the broken-down list of problems in
guile:

1) It calls libtoolize without prior check that the libtoolize version is
   >= 1.5. libtoolize 1.4.3 does not create an ltdl/ directory, therefore
   it is unusable. (I would also add checks for minimum versions of
   autoconf and automake, btw.)

2) It doesn't copy libtool.m4 into guile-config/, but it should.
   libtoolize doesn't do it. 'aclocal' will not find the libtool.m4 file
   if libtool and automake have been installed with different --prefix
   parameters.

3) It would help to call "autoreconf --verbose". Then at least the output
   is more informative:
$ autoreconf --verbose
autoreconf: Entering directory `.'
autoreconf: configure.in: not using Gettext
autoreconf: running: aclocal -I guile-config
configure.in:57: warning: AC_CANONICAL_HOST invoked multiple times
/home/haible/gnu/autoconf-2.59/tests/../lib/autoconf/specific.m4:393: 
AC_MINGW32 is expanded from...
configure.in:57: the top level
autoreconf: configure.in: tracing
configure.in:57: warning: AC_CANONICAL_HOST invoked multiple times
/home/haible/gnu/autoconf-2.59/tests/../lib/autoconf/specific.m4:393: 
AC_MINGW32 is expanded from...
configure.in:57: the top level
autoreconf: configure.in: subdirectory libltdl to autoreconf
autoreconf: Entering directory `libltdl'
autoreconf: `configure.ac' or `configure.in' is required

4) The gettext .m4 macros are not present in guile-config/ and not
   added by autoreconf. 'aclocal' will not find the gettext.m4 and related
   files if gettext and automake have been installed with different --prefix
   parameters.

5) Since AM_GNU_GETTEXT is used in configure.in, a config.rpath is needed.
   autoreconf does not add it. 'autopoint' would add it, but is not invoked
   from autoreconf.

6) "make" fails in the doc directory because version.texi doesn't exist.
   Kevin Rude says that it should be fixed by
   "configure --enable-maintainer-mode". But it would be better if autogen.sh
   would solve this.

Bruno





reply via email to

[Prev in Thread] Current Thread [Next in Thread]