[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: cygwin build problem with m4 HEAD
From: |
Ralf Wildenhues |
Subject: |
Re: cygwin build problem with m4 HEAD |
Date: |
Sun, 18 Sep 2005 23:23:53 +0200 |
User-agent: |
Mutt/1.5.9i |
Hi Eric,
[ Ccing bug-m4 again ]
* Eric Blake wrote on Fri, Sep 09, 2005 at 02:06:12PM CEST:
> According to Ralf Wildenhues on 9/9/2005 1:31 AM:
> >>>I notice that it is attempting to link against /usr/lib/libltdl.dll.a,
> >>>which comes from libtool 1.5.18, rather than /usr/local/lib/libltdl.dll.a,
> >>>which is my installed libtool 2.1a, and I am pretty sure that
> >>>lt_dlhandle_fi{nd,rst} were added in 2.x, explaining the link failure.
> >>>What I can't track down is why the link command is looking in the wrong
> >>>directory, and thus getting the wrong symbols for libltdl.
> >>
> >>I managed to work around the earlier bug report by configuring m4
> >>using --with- included-ltdl, but it still feels hackish. I wish I
> >>knew why m4 was trying to link against the wrong libltdl. In the
> >>meantime, once I was using my workaround, it exposed another bug.
> > Can you post the value of $(LIBLTDL)?
>
> On a fresh m4 ./configure, without --with-included-ltdl, @LIBLTDL@ is
> replaced with -lltdl, @LTDLINCL@ with -I${top_srcdir}/ltdl, @INCLTDL@ with
> - -I${top_srcdir}/ltdl, and HAVE_LTDL is set to 1.
>
> On a fresh m4 ./configure --with-included-ltdl, @LIBLTDL@ is replaced with
> ${top_builddir}/ltdl/libltdlc.la, LTDLINCL and INCLTDL are unchanged, and
> HAVE_LTDL is no longer defined.
> I have not defined LD_RUN_PATH, /usr/local/bin but not /usr/local/lib was
> in my PATH. Was there something I was missing when configuring m4 on
> telling it where the full path where to look for the installed libtool
> libraries? And does libtool really want /usr/local/lib on the PATH, or
> does it look in /usr/local/bin/../lib automatically if /usr/local/bin is
> on the path? Could it be a bug in libtoolize for not setting up
> ./configure to know where the matching installed libltdl is in relation to
> the installed libtoolize?
Possibly. I think Gary is working on this.
Meanwhile, I've found another bug in CVS m4: the LTDLINCL aka INCLTDL
value is not used in enough cases, it's missing in the compilation of
src/module.c, for example. This patch is just a suggestion, it may
obviate the need for LTDLINCL in src_m4_CPPFLAGS.
Cheers,
Ralf
* Makefile.am (AM_CPPFLAGS): Add LTDLINCL.
Index: Makefile.am
===================================================================
RCS file: /cvsroot/m4/m4/Makefile.am,v
retrieving revision 1.23
diff -u -r1.23 Makefile.am
--- Makefile.am 7 May 2005 19:46:13 -0000 1.23
+++ Makefile.am 18 Sep 2005 21:17:36 -0000
@@ -28,7 +28,7 @@
AM_CPPFLAGS = -I. -I$(srcdir) \
-Ignu -I$(srcdir)/gnu \
-Im4 -I$(srcdir)/m4\
- $(INTLINCL)
+ $(INTLINCL) $(LTDLINCL)
AM_LDFLAGS = -no-undefined -export-dynamic
EXTRA_DIST = bootstrap $(config_aux_dir)/mkstamp