On Mon, May 11, 2009 at 4:33 PM, Ralf Wildenhues <ralf.wildenh...@gmx.de>wrote:

> Hi Will,
>
> * Will Mason wrote on Mon, May 11, 2009 at 05:07:36PM CEST:
> > On Mon, May 11, 2009 at 1:10 AM, Ralf Wildenhues <ralf.wildenh...@gmx.de
> >wrote:
> > > * Will Mason wrote on Mon, May 11, 2009 at 06:47:58AM CEST:
> > > > I've been using a project with autoconf, automake and libtool for
> some time.
> > > > Today I added libltdl to my code. I ran libtoolize --ltdl --copy. My
> > > > configure.ac has this:
> > > >
> > > > LT_CONFIG_LTDL_DIR([libltdl])
> > > > LT_INIT([dlopen])
> > > > LT_LANG([C++])
> > > > LTDL_INIT([recursive])
>
> > > > When I build on Mac OS X, everything is great. It all works
> perfectly.  When
> > > > I build on Solaris 10 with CC, my executables fail to link because of
> this:
> > > >
> > > > Undefined                       first referenced
> > > >  symbol                             in file
> > > > lt__argz_insert                     ./.libs/libforxxq.so
>
> > > > I can see no way to convince libtool that it should actually compile
> the
> > > > argz stuff. In the Makefile I see ltdl_LIBOBJS = argz.o, but I can't
> see how
> > > > to tell the system to actually target that file. Has anyone seen this
> > > > problem before? Can anyone help me sort this out?
> > >
> > > Which Autoconf and Automake versions do you use?
>
> > Thanks for the reply. I'm using autoconf 2.63 and automake 1.10.1.
>
> Hmm.  libltdl/Makefile should contain all of these lines:
>
>  ltdl_LTLIBOBJS = argz.lo
>
>  libltdl_la_LIBADD = $(ltdl_LTLIBOBJS)
>  libltdl_la_DEPENDENCIES = $(LT_DLLOADERS) $(ltdl_LTLIBOBJS)
>
>  libltdlc_la_LIBADD = $(libltdl_la_LIBADD)
>  libltdlc_la_DEPENDENCIES = $(libltdl_la_DEPENDENCIES)
>
>  libltdl.la: $(libltdl_la_OBJECTS) $(libltdl_la_DEPENDENCIES)
>        $(libltdl_la_LINK) $(am_libltdl_la_rpath) $(libltdl_la_OBJECTS)
> $(libltdl_la_LIBADD) $(LIBS)
>
>  libltdlc.la: $(libltdlc_la_OBJECTS) $(libltdlc_la_DEPENDENCIES)
>        $(libltdlc_la_LINK) $(am_libltdlc_la_rpath) $(libltdlc_la_OBJECTS)
> $(libltdlc_la_LIBADD) $(LIBS)
>
> What's missing in your build tree?
> Also, I think you haven't stated yet which Libtool version you're using.
> Libtool-2.2.6 has this in the NEWS file:
>
>  * Bug fixes:
>
>    - Fix 2.2 regression that caused argz symbols to be exported from
>      libltdl unrenamed on systems that do not have working argz.
>
> so if you're using something older, please update to 2.2.6a.
>
> Thanks,
> Ralf
>

Thanks a ton for the help. You solved the problem. I was using libtool
2.2.4, and as soon as I upgraded to 2.2.6a, the problem went away.

I really appreciate your taking the time to have a look at this issue,
Will
_______________________________________________
http://lists.gnu.org/mailman/listinfo/libtool

Reply via email to