RE: Wrong install_names for X libs
RE: Wrong install_names for X libs
- Subject: RE: Wrong install_names for X libs
- From: "Haroon Sheikh" <email@hidden>
- Date: Sun, 12 Jan 2003 15:40:46 -0800
Thanks for the feedback guys. I've logged a bug internally to track the
issue. But I suspect some one may have logged this to, but it's better
to have duplicates than let it fall through the cracks.
haroon
-----Original Message-----
From: email@hidden
[mailto:email@hidden] On Behalf Of Torrey T. Lyons
Sent: Saturday, January 11, 2003 9:44 AM
To: David R. Morrison; Martin Costabel; email@hidden
Subject: Re: Wrong install_names for X libs
This is a serious bug. The XFree86 Project ensures that all libraries
with minor version number changes are backwards compatible. With an
install name of /usr/X11R6/lib/libX11.6.2.dylib, version 6.2 is
treated as incompatible with all other 6.x versions. Application
binaries will also be incompatible between various X11 distributions
on Mac OS X.
The install name needs to be fixed, but one might argue that
libX11.6.dylib should be the actual library instead of a symlink. The
two level symlink structure is a convenience to application
developers and standard XFree86 practice.
--Torrey
XFree86 - Saving the world one pixel at a time.
At 9:28 AM -0500 1/11/03, David R. Morrison wrote:
>I wanted to follow up on this message, because Apple's X11.app team may
have
>overlooked it.
>
>Here's the effect of this problem with the -install_name: if I compile
another
>app against Apple's X11 release, then at runtime the X11 libraries will
be
>searched for at
> /usr/X11R6/lib/libX11.6.2.dylib
>while if I compile it against the XFree86 release or Fink's release
(or,
>presumably, the GNU-Darwin release), then the libraries will be
searched for
>at
> /usr/X11R6/lib/libX11.6.dylib
>Since there are symlinks in place, there is no immediate problem.
>
>However, serious problems will arise the next time the XFree86 project
updates
>its libraries. If libX11 goes to 6.3, then in the standard release,
there
>will be a symlink from /usr/X11R6/lib/libX11.6.dylib pointing to the
new lib
>/usr/X11R6/lib/libX11.6.3.dylib and all previously compiled apps will
still
>work. However, under Apple's release, either all of the old 6.2
versions will
>continue to need to be shipped (with *every* update until the "6"
changes), or
>anyone who has compiled apps against the library will get failures from
dyld
>upon loading and will have to recompile.
>
> -- Dave
>
>
>On Jan 10,2003 13:07:22 +0100, Martin Costabel
><email@hidden> wrote :
>>The dylibs in /usr/X11R6/lib come in triples,
>>
>>libXsomething.dylib, libXsomething.v.dylib, libXsomething.v.r.dylib,
>>
>>for example
>>
>>libX11.dylib, libX11.6.dylib, libX11.6.2.dylib
>>
>>The third of these is the real file, the first two are symlinks to the
>>third.
>>The install_name of all three of them should be the second one, in the
>>example libX11.6.dylib.
>>
>>It is like this in any standard compilation of xfree86, whether
>>directly form the sources or from Fink. It is also the whole idea of
>>this construction, namely when a new minor revision libX11.6.3.dylib
>>comes out, the binaries that were compiled against libX11.6.2.dylib
>>will continue to work, because they have libX11.6.dylib in their
>>library list, and this still exists and is compatible to the preceding
>>revision.
>>
>>Not so for Apple's X11. Apple has put libX11.6.2.dylib as
>>install_name. Not only this defies the whole construction of this
>>two-level symlink method, but it causes compatibility problems and
>>crashes. This has already been reported in compilations where
>>multiply-defined symbols errors appear, because now libX11.6.dylib and
>>libX11.6.2.dylib are seen as two different libraries.
>>
>>Is there some reason behind this, or is it just a bug?
>>
>>--
>>Martin
>>_______________________________________________
>>x11-users mailing list | email@hidden
>>Help/Unsubscribe:
http://www.lists.apple.com/mailman/listinfo/x11-users
> >Do not post admin requests to the list. They will be ignored.
_______________________________________________
x11-users mailing list | email@hidden
Help/Unsubscribe: http://www.lists.apple.com/mailman/listinfo/x11-users
Do not post admin requests to the list. They will be ignored.
_______________________________________________
x11-users mailing list | email@hidden
Help/Unsubscribe: http://www.lists.apple.com/mailman/listinfo/x11-users
Do not post admin requests to the list. They will be ignored.