[Pythonmac-SIG] Why do I need PantherPythonFix?
Bob Ippolito
bob at redivi.com
Mon Feb 21 08:54:39 CET 2005
On Feb 20, 2005, at 11:52 PM, Roger Binns wrote:
>> 10.3. If none of these references answer those questions, please let
>> me know and I will try to add additional info to the wiki so that it
>> is more clear.
>
> I am still baffled by all this stuff. Apparently Apple came up with
> this
> mechanism (Frameworks) that allows for easy self containment of an
> environment, as well as allowing for multiple concurrent versions.
> Then they demonstrate the power of this system by only having one
> version and never updating it per OS version, as well as hard coding
> various things.
They're designed to have multiple concurrent versions installed for
binary compatibility purposes, and they work fine for that. They are
NOT AT ALL designed to be able to facilitate writing software that
links against a previous version. However, it's common to have Python
2.3 and Python 2.4 installed and want to be able to link new software
against 2.3, so the default framework mechanisms are not suitable for
this.
http://bob.pythonmac.org/archives/2005/01/05/versioned-frameworks-
considered-harmful/
> Seperately from that there appears to be some issue with dynamic
> linking. Apple have their own format (Macho) instead of ELF and the
> issues are akin to LD_LIBRARY_PATH and rpaths hard coded in libraries.
No, not really. Any issues Python had with Mach-O were because we
screwed up.
> So if all this Apple invented stuff actually has merit, why isn't
> it used? And if doesn't have merit, or Apple don't bother using
> it, why not just ignore them and replace it with something that
> does work, has concurrent versions and is updated?
The Mach-O/dyld features are used all over the place. Versioned
frameworks are not, because they aren't really that useful and the tool
support for them is nonexistent.
-bob
More information about the Pythonmac-SIG
mailing list