[Pythonmac-SIG] Versions, Frameworks, Linking, PantherPythonFix

Bob Ippolito bob at redivi.com
Tue Feb 22 19:16:11 CET 2005


On Feb 22, 2005, at 12:18, Roger Binns wrote:

>> so if you build all of your extensions on a 10.2 environment
>
> BTW I don't actually have a 10.2 environment.  The Mac Mini comes
> with 10.3.

Then you can't build 10.2 compatible software.. no big deal.

>> In other words for a maximally redistributable application:
>> - Install PantherPythonFix immediately, on any Mac OS X 10.3 machine 
>> that you will use distutils on, without hesitation
>
> My biggest 3rd party dependency is wxPython.  Is there any way of 
> telling if it was built on a machine with the fix applied?

It wasn't.

>> - Build your application and all extensions on the lowest common 
>> denominator version of Mac OS X *not* using the vendor Python.
>
> I don't see a MacPython for 10.3.

MacPython for 10.2 works with 10.3.

>>  I don't really care about Linux -- I'm sure it's possible to bundle 
>> the vendor Python with your application, but I'm not sure why you 
>> would do such a thing.  Is that default behavior for cx_Freeze?
>
> It is the default behaviour of both py2exe and cx-Freeze to bundle the
> Python interpretter with your app.  No distinction is made between
> vendor and non-vendor.  I believe they can also both be made to not
> include an interpretter, but that is *very* rare.

There is no vendor Python on Windows, so py2exe can make no such 
distinction.

> The simple reason for always including the interpretter is because
> you know things work.  Otherwise you are at the mercy of whatever
> can be on other machines which will generally various incompatible
> versions.  (On Linux Python is randomly compiled as two bytes per
> unicode char on some machines and four bytes on others.)  For
> non-trivial apps, there isn't much in the way of binary compatibility.
> For example, look at the most popular app on SourceForge, and how
> they have different downloads for each Linux distro and version:
>   http://gaim.sourceforge.net/downloads.php

It's the default behavior of py2app to bundle the interpreter too, 
except in the vendor case.

-bob



More information about the Pythonmac-SIG mailing list