Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 18 Aug 1995 12:42:42 +0100 (BST)
From:      Paul Richards <paul@netcraft.co.uk>
To:        asami@cs.berkeley.edu (Satoshi Asami)
Cc:        jkh@time.cdrom.com, CVS-commiters@freefall.FreeBSD.org, cvs-ports@freefall.FreeBSD.org
Subject:   Re: cvs commit: ports/lang/tcl74/pkg PLIST
Message-ID:  <199508181142.MAA10490@server.netcraft.co.uk>
In-Reply-To: <199508181117.EAA04848@silvia.HIP.Berkeley.EDU> from "Satoshi Asami" at Aug 18, 95 04:17:53 am

next in thread | previous in thread | raw e-mail | index | archive | help
In reply to Satoshi Asami who said
> 
>  * >   Change library names.  This thing is not compatible with tcl-7.3 at
>  * >   all, so call it libtcl74.so.1.0.  Same for the static library.
> 
> (I asked about this on the ports list...guess you haven't made it back 
>  to there yet? ;)
> 
>  * Ack?!  Hmmm.  This kind of name mangling leads me to believe that
>  * we've got some fundamental problems in the way we look for shared
>  * libraries, or at the very least in how we're able to "lock" a given
>  * application to a library that it truly requires.  This certainly won't
>  * be the last such instance where backwards compatibility isn't
>  * maintained?
> 
> Yes, I think so too.  Essentially, the problem is this:
> 
> Suppose we have libtk.so.3.6 and libtk.so.4.0 in our ld search path.
> If we take an application that is already linked to one of them, it
> will run fine.  But if we want to link something that requires the
> lower-numbered version (3.6 in this case), there is no way to specify
> this, because all ld understands is -ltk and it will just use the
> highest numbered shared library (4.0 in this case).
> 

This is most definately a bug in ld.so, it should use the library with the
same major number as the application expects. Other libraries will
be incompatible, that's why the major number is different! It's OK to
use a higher minor number.

I think SunOS falls back to an older major number if the requested
library can't be found.

-- 
  Paul Richards, Bluebird Computer Systems. FreeBSD core team member. 
  Internet: paul@FreeBSD.org, http://www.freebsd.org/~paul
  Phone: 0370 462071 (Mobile), +44 1222 457651 (home)



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199508181142.MAA10490>