[Pythonmac-SIG] py2app on Tiger

Bob Ippolito bob at redivi.com
Thu Mar 17 03:39:47 CET 2005

On Mar 16, 2005, at 9:13 PM, Kevin Dangoor wrote:

> Given the buzz that Tiger is coming in a month, I was curious about 
> whether it's possible to create Python apps on Tiger and run them on 
> Panther (assuming, of course, that I'm not using Tiger features). I'm 
> already using my own Python build, if that makes any difference.
> I'd really like to upgrade to Tiger, but even more than that I'd 
> really like for people running Panther to be able to buy my software 
> :)

You *may* need to compile the Python framework and all of the 
extensions that you use on Mac OS X 10.3 (Panther).  If you *do* 
compile them on Mac OS X 10.3, then they will surely work on Mac OS X 
10.3.  If you compile them on Mac OS X 10.4 (Tiger), they *might* work 
on Mac OS X 10.3.  It really depends on how they're written, what they 
link to, and how they link to it.  Testing is necessary.

In general, Python itself MUST be compiled on the minimum target 
platform, because its configure scripts and stuff will pick up features 
and use them regardless of how hard you try and prevent it from doing 
so with MACOSX_DEPLOYMENT_TARGET and usage of SDK paths.  Extensions 
are usually less complicated and you may have more luck with that.  
PyObjC compiled on Mac OS X 10.4 probably won't work with Mac OS X 
10.3, most other things *probably* will.  Again, testing is necessary.

All that said:

     Since you're going to have to test on the minimum target platform 
anyway, you might as well compile everything there.

My recommendation is to:

-  Build your framework on the minimum target platform
-  Copy it over to your workstation
-  Use bdist_mpkg to build installer packages for the extensions you 
use from the minimum target platform
-  Install them on your workstation as needed

py2app doesn't compile anything, so it doesn't care which OS it runs 
on.  I have a Python framework plus extensions that were built on Mac 
OS X 10.2 (Jaguar) that I use to build a Mac OS X 10.2 compatible 
application with from Mac OS X 10.3.


More information about the Pythonmac-SIG mailing list