From jrm at ftfl.ca  Mon Nov 21 02:49:18 2016
From: jrm at ftfl.ca (Joseph Mingrone)
Date: Sun, 20 Nov 2016 21:49:18 -0400
Subject: [Rd] shared libraries: missing soname
In-Reply-To: <22578.18597.717387.458240@max.nulle.part> (Dirk Eddelbuettel's
	message of "Sun, 20 Nov 2016 19:06:45 -0600")
References: <868tsdohoe.fsf@phe.ftfl.ca>
	<22578.18597.717387.458240@max.nulle.part>
Message-ID: <864m31ob4x.fsf@phe.ftfl.ca>

Hello Dirk,

Dirk Eddelbuettel <edd at debian.org> writes:

> On 20 November 2016 at 19:28, Joseph Mingrone wrote:
> | Hello,
> | 
> | R's shared libraries are linked without setting the soname.  This is causing problems for some consumers.
> | 
> |         Error: /usr/local/lib/R/library/tseries/libs/tseries.so is linked to
> |         /usr/local/lib/R/lib/libRblas.so which does not have a SONAME.  math/R needs
> |         to be fixed.
> | 
> | What's the correct way to add the necessary linker flags?  I believe it should be something like this.
> | 
> |        cc -shared -Wl,-soname,...

> I think that may be true "in theory" (for libraries loaded by ldd(8) via
> `/etc/ld.conf`) but not "in practice" for R which loads these shared
> libraries itself (via dlopen(3) etc).

R may use dlopen() but other customers may not.

> For what it is worth, I have been providing the Debian packages "as is" for
> now 15+ years and nobody has complained. 

> What system are you on to get that complaint?

This is on FreeBSD.  Our apt-get, pkg, will not register shared library dependencies if the shared library does not have a soname.  If the library gets changed and is no longer compatible with the previous version, and there is no soname to check, pkg will not know that all its dependencies need to be reinstalled.

Regards,

Joseph
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 930 bytes
Desc: not available
URL: <https://stat.ethz.ch/pipermail/r-devel/attachments/20161120/c61e4bd8/attachment.bin>


[Rd] shared libraries: missing soname
Joseph Mingrone