Mailing Lists: Apple Mailing Lists

Image of Mac OS face in stamp
 
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Frameworks (nothing to do with Fink)



Richard wrote


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...

No more opinion just some fact.

Frameworks can contain multiple versions of the same libraries. Have a grovel in /System/Library/Frameworks/JavaVM.framework to see the arrangement. It is bit like the practice on some Linux distributions I used where there are multiple versions of a library (libfoo.1.so, libfoo.2.so) but the latest is symlinked as libfoo.so. The Apple implementation builds on that idea but is more complete and functional.

Basically one can upgrade a framework and apps will still dynamically link against the library version that was used at compile time (if the compatibility version is different). Alternatively, you can have umbrella frameworks that contain the other frameworks it references. The whole issue is much easier to manage, because everything is obvious from a quick gander in the Finder. There is also a clear framework hierarchy not subject to clobbering by software installers.

Bill Northcott
_______________________________________________
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.



Visit the Apple Store online or at retail locations.
1-800-MY-APPLE

Contact Apple | Terms of Use | Privacy Policy

Copyright © 2007 Apple Inc. All rights reserved.