[csw-maintainers] Package incompatibility, any suggestions?

James Lee james at opencsw.org
Tue Mar 24 15:52:25 CET 2009


On 24/03/09, 14:09:54, Philip Brown <phil at bolthole.com> wrote regarding Re: 
[csw-maintainers] Package incompatibility, any suggestions?:


> > $ dump -Lv /opt/csw/lib/libnet.so | grep -c SONAME
> > 0
> >
> > Sadly not yet.  Lib needs versioned SONAME set.

> well, it WOULD be possible to force the new lib, to have a new SONAME
> of "libnet.so.1.1"

The existing software links to libnet.so, eg:

$ dump -Lv /opt/csw/bin/curl | grep libnet
[7]	NEEDED          libnet.so

So the libnet.so would need to remain the old lib or be a link
to the old lib but when linking new software with just -lnet the
linker will look for libnet.so and extract the old SONAME (none).
Setting the SONAME in the new libnet only will require the lib
version lib to be used during builds which is messy. 


The old lib needs to be named with a version and more importantly
software that links to it needs to link directly to it not libnet.so
(done automatically if there is an SONAME), ie, needs relinking.

Eg: 

$ dump -Lv /opt/csw/bin/curl | grep libcurl.so.4
[1]	NEEDED          libcurl.so.4


$ ls -l /opt/csw/lib/libcurl.so
lrwxrwxrwx   1 root     other         16 Mar 17  2008 
/opt/csw/lib/libcurl.so -> libcurl.so.4.0.1

$ dump -Lv /opt/csw/lib/libcurl.so | grep SONAME
[10]	SONAME          libcurl.so.4

$ dump -Lv /opt/csw/lib/libcurl.so.4 | grep SONAME
[10]	SONAME          libcurl.so.4

$ dump -Lv /opt/csw/lib/libcurl.so.3 | grep SONAME
[9]	SONAME          libcurl.so.3




James.






More information about the maintainers mailing list