[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