We’ve been building our product using py2app 0.2 on Panther with Apple’s Mac python. That has worked for some time, but as has been pointed out here many times, relying on that is not the safest way to ship things to real customers.

 

The app is large with several C++ extensions using boost::python. We need to support customers running Panther as well as Tiger, so we’re continuing to build under Panther.

 

So we’ve upgraded Panther to MacPython 2.4, and grabbed the appropriate py2app (py2app-0.2-py2.4-macosx10.3). The application builds, but when we run it, it dies with “Interpreter not initialized (version mismatch?)”.  This happens the instant we attempt to import our first extension.

 

We can load our extensions manually by specifying the appropriate DYLD environment variables and they load properly. The DYLD parameters are specified in the setup.py (and it all seems to work with the Apple native python).

 

We have carefully checked all our dependencies in the xcode build – we’re building everything with the 2.4 python. The .plist file in the constructed application indicates that we successfully found and built with the 2.4 python.

 

We’ve tried changing the symlink at /usr/bin/python to point to 2.4 instead of 2.3, but that didn’t fix the problem, so we put it back the way it was.

 

We tried installing PantherPythonFix (out of desperation) but we didn’t expect it to change anything and it didn’t.

 

We build using

python2.4 setup.py py2app

 

It looks like the executable built into our app (in the Contents/MacOS folder) is still somehow dependent on the native python, but we can’t figure out what the problem is.

 

Help, please? Any ideas?

 

             Kent

_______________________________________________
Pythonmac-SIG maillist  -  Pythonmac-SIG@python.org
http://mail.python.org/mailman/listinfo/pythonmac-sig

Reply via email to