[Pythonmac-SIG] PyObjC ScreenSaver on 10.7
Berg, Stuart
bergs at janelia.hhmi.org
Wed Dec 26 21:01:51 CET 2012
One more note. I came across this link yesterday:
http://developer.apple.com/library/mac/#qa/qa1666/_index.html
How do I make sure that the ScreenSaver bundle I've created with py2app uses the correct garbage collection setting? Is there a way to specify GCC_ENABLE_OBJC_GC=required from setup.py? Also, is there a way to inspect a binary to see if this setting was used to build it?
Sorry for my ignorance….
Thanks again,
Stuart
On Dec 26, 2012, at 12:08 PM, Stuart Berg wrote:
> Hi Ronald,
>
>> The screensaver framework should work just fine, but only if the bundle contains 64-bit code.
>>
>> What is the output of 'file SillyBalls.saver/Contents/MacOS/SillyBalls' ?
>
> I have two versions of python, so I'll try this twice. First with the built-in version:
> $ which python
> /usr/local/bin/python
>
> $ python --version
> Python 2.7.2
>
> $ python setup.py py2app
> ……..
>
> $ file dist/SillyBalls.saver/Contents/MacOS/SillyBalls
> dist/SillyBalls.saver/Contents/MacOS/SillyBalls: Mach-O universal binary with 2 architectures
> dist/SillyBalls.saver/Contents/MacOS/SillyBalls (for architecture i386): Mach-O bundle i386
> dist/SillyBalls.saver/Contents/MacOS/SillyBalls (for architecture x86_64): Mach-O 64-bit bundle x86_64
>
> $ file dist/SillyBalls.saver/Contents/MacOS/python
> dist/SillyBalls.saver/Contents/MacOS/python: Mach-O universal binary with 2 architectures
> dist/SillyBalls.saver/Contents/MacOS/python (for architecture i386): Mach-O executable i386
> dist/SillyBalls.saver/Contents/MacOS/python (for architecture x86_64): Mach-O 64-bit executable x86_64
>
> And with my own build of python:
>
> $ rm -rf build dist
>
> $ which python
> /Users/bergs/special-build/Frameworks/Python.framework/Versions/2.7/bin/python
>
> $ python --version
> Python 2.7.3rc2
>
> $ python setup.py py2app
> …….
>
> $ file dist/SillyBalls.saver/Contents/MacOS/SillyBalls
> dist/SillyBalls.saver/Contents/MacOS/SillyBalls: Mach-O 64-bit bundle x86_64
>
> $ file dist/SillyBalls.saver/Contents/MacOS/python
> dist/SillyBalls.saver/Contents/MacOS/python: Mach-O 64-bit executable x86_64
>
>
>> Which versions of python, pyobjc, and py2app do you use (and for the python versions, is this the apple provided one or some other install)?
>
>
> I installed the same version of pyobjc to each python install:
>
> $ python -c "import objc; print objc.__version__"
> 2.4
>
> $ python -c "import py2app; print py2app.__version__"
> 0.7.2
>
> The System Preferences app doesn't give a very useful error message ("Contact the developer of this screen saver for a newer version."). Do you know if there's any way to get a better idea of what's going wrong? As far as I can tell, Console.app doesn't have any useful output on this problem.
>
> Thanks,
> Stuart
>
>
>
More information about the Pythonmac-SIG
mailing list