Rich Cook wrote:
[snip]
> Hey, Sean,
> I can definitely see how placing libxxx.so in /sw/lib invites it to be
> overwritten by another fink package wishing another library version.
> But how would Frameworks solve this problem? If XXX is bundled as a
> framework, and product A needs one version and B needs another, then
> they either have to bundle it with their own product or there will be a
> conflict, frameworks or no frameworks. There is only one XXX framework
> found by the compiler, just as there would only be one libXXX.so found
> using /usr/local/lib...
But the XXX framework may contain many different versions of the same
library, and may even contain different versions of the headers to
correspond to these different versions of the libraries. The default
will be to link to the most recent version, but the fact that other
versions are there means that different programs may have linked to
different versions. And if you need to link to a specific (old) version
you can specify that.
In Linux (and in Fink), this is handled a different way, typically by
installing some symlinks to the actual library, with a few versions
of the actual library being permitted to coexist when that is appropriate.
It's actually easier to do this using Fink than in Linux, due to additional
metadata about the library being available through Mach-O tools
(the -install_name, -current_version, and -compatibility_version).
-- Dave
_______________________________________________
scitech mailing list | email@hidden
Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/scitech
Do not post admin requests to the list. They will be ignored.