[M3devel] trouble installing on a Debian lenny system.
hendrik at topoi.pooq.com
hendrik at topoi.pooq.com
Tue Apr 8 02:36:30 CEST 2008
On Mon, Apr 07, 2008 at 12:03:50PM +0200, Olaf Wagner wrote:
> Quoting hendrik at topoi.pooq.com:
>
> >On Sun, Apr 06, 2008 at 11:29:48AM -0400, Tony Hosking wrote:
> >>You should have a link from libXaw.so, etc.
> >
> >It turns out that link was in the package libXaw7-dev, which was missing
> >on both my 64- and 32-bit systems.
>
> This sounds broken to me.
>
> M3 has been changed some time ago to look for shared objects instead of
> archives, as the latter are often not installed on modern systems, but
> come only as part of development packages.
>
> But there must be a simple unique name for the resource; we cannot
> per default refer to libXaw.so.7.0 or similar, since this would
> need more updates and maintenance and would break if another version
> is actually installed.
>
> So I don't see a reason for this kind of link to be in the development
> packages. Should we report this as a bug?
I suppose that depends on whether the linker and loader understand the
version numbers in the name and does the right thing in the absence of
links. I know there's a convention as to which parts of the versin
number indicate compatible vs incompatible changes. I thought that
compatible alternatives could be found automatically at load time, and
(I thought) the wrong alternatives would not be. I don't know whether
the mechanism for this is symbolic links. I suppose it could be.
So I don't know whether this is a bug. The major version number changes
for incompatible changes. If the linker links a program to a particular
shared library, changes in the minor version wouldn't matter, but change
in the major version likely would. So I'd guess that the linker would
include a reference to the particular major version in the linked
binary, not a reference to the versin-free file name. Thus the
version-free library name would not be needed just for running the
binary. It might end up referring to an incompatible version.
I could be wrong, of course. I'm just trying to guess what Debian's
reasoning might have been.
-- hendrik
More information about the M3devel
mailing list