Subject: Re: Shared libraries and libtool
To: Nick Hudson <skrll@netbsd.org>
From: Murray Armfield <murray@river-styx.org>
List: netbsd-help
Date: 03/22/2002 20:41:14
On Fri, 22 Mar 2002 20:14, you wrote:
> On Friday 22 March 2002 9:06 am, Murray Armfield wrote:
> > The specific problem I'm trying to get around is the final linking stage
> > of xerces-c. I have built all objects succesfully using libtool as
> > documented in Packages.txt. Thought that if there was a quick answer to
> > this, things might fall into place.
> >
> > The error I have is...
> >
> > /usr/pkg/bin/libtool  --mode=link c++ -DNETBSD -rpath /usr/pkg/lib
> > -L/usr/home/admin/DEVELOPMENT/pkgsrc/textproc/xerces-c/work/.buildlink/li
> >b -Wl,-R/usr/pkg/lib -version-info 1:7 -o
>
> /usr/home/admin/DEVELOPMENT/pkgsrc/textproc/xerces-c/work/xerces-c-src1_7_0
>/lib/libxerces-c1_7_0.so
>
>
> This should end in .la not .so. libtool detects the -o foo.la to mean
> create a library.
>
> Nick

Made the adjustments from .so to .la, and .o to .lo and it now builds static 
and shared version. '...And there was much rejoicing.' Thank you very much 
with that Nick.

On another note I just noticed this at the end of the call to libtool on 
linking...
<<<<MANY OBJECT FILES .lo>>>>     -licuuc -licudata -lgcc

*** Warning: This library needs some functionality provided by -lgcc.
*** I have the capability to make that library automatically link in when
*** you link to this library.  But I can only do this if you have a
*** shared version of the library, which you do not appear to have.
*** The inter-library dependencies that have been dropped here will be
*** automatically added whenever a program is linked with this library
*** or is declared to -dlopen it.

I'm using new toolchain, but libgcc.so does not appear in my /usr/lib.
Just rebuild gnu-lib and libgcc.so is not even attempted at link. Are there 
plans to create a libgcc.so for NetBSD-current? Has something happened to it? 
All libgcc shared object files are built, but not linked. This is on current 
as at 21/03/02 on i386.

Regards,
	Murray