Hi all --

It seems I have solved my frameworks problem for now -- I simply copied all the frameworks I needed and manually stuck them inside my app (deleting all the unnecessary header folders). Not an automated process, but at least my python app now seems to run on other Macs.

Also, I solved the pygame_icon problem by changing permissions (sudo chmod 777) on the "pygame" folder inside python.framework and overwriting pygame_icon.icns and pygame_icon.tiff (the .tiff file was the real culprit, I discovered) with my own version (same filenames, different contents).

Thank you, Chris VB, Tom W, and Bob I!

-- Joel


On Jan 2, 2009, at 11:31 PM, Bob Ippolito wrote:

Unknown load command: 27 means it's seeing a load command (low level
Mach-O stuff) that it doesn't understand, which is reasonable because
I don't think I've updated the code since 10.4 or so and there are
probably some new ones.

I only really worked on py2app, etc.when I was building Mac apps, and
I haven't in a few years. I spend my open source time working on more
server-side stuff.

On Fri, Jan 2, 2009 at 8:17 PM, Joel Gluck <joelgl...@yahoo.com> wrote:
Hi Bob,
Thanks for pointing me to the right place -- I was able to replace the
pygame icon with my own as a temporary fix.
I have two more questions (I know, you're not supporting py2app anymore, but you're basically the guru of this code so I thought I'd at least try to go
directly to the source...!):
1) My built .app is missing frameworks pygame depends on. I'm trying to include them by using py2app's "frameworks" option, but it doesn't seem to
work as advertised -- no matter how many ways I devise to give it a
"comma-separated list of additional frameworks", it only adds the first framework in the list. (This is true whether from the command line or within the setup file as a py2app option.) Using the frameworks option multiple times does not seem to work. Is there a secret method? Currently I'm doing:
APP = ['savi.py']
DATA_FILES = ['../gameplay', 'data', 'en']
OPTIONS = { 'argv_emulation': True,
"iconfile": "mac_savi_icon.icns",
"dist_dir":"mac_dist",
"bdist_base":"mac_build",
 "frameworks": ["SDL_image.framework", "SDL_ttf.framework",
"SDL_mixer.framework", "SDL.framework"],
"includes":["Numeric"] }
setup( app=APP,
data_files=DATA_FILES,
options={'py2app': OPTIONS},
setup_requires=['py2app'],
version="0.2.3" )
2) When I run "python setup.py py2app", it seems to run fine for a while but
then hits a snag -- here's a traceback:
copying /Library/Frameworks/SDL.framework/Versions/A/SDL ->
/Users/joel/Documents/OT Video Games/SAVI Learning Tool Prototype ver
2.3/mac_dist/savi.app/Contents/Frameworks/SDL.framework/Versions/A
linking /Users/joel/Documents/OT Video Games/SAVI Learning Tool Prototype ver 2.3/mac_dist/savi.app/Contents/Frameworks/SDL.framework/ Versions/Current
-> A
Traceback (most recent call last):
 File
"/Users/joel/Library/Python/2.5/site-packages/py2app-0.3.6- py2.5.egg/py2app/build_app.py",
line 548, in _run
   self.run_normal()
 File
"/Users/joel/Library/Python/2.5/site-packages/py2app-0.3.6- py2.5.egg/py2app/build_app.py",
line 619, in run_normal
   self.create_binaries(py_files, pkgdirs, extensions, loader_files)
 File
"/Users/joel/Library/Python/2.5/site-packages/py2app-0.3.6- py2.5.egg/py2app/build_app.py",
line 731, in create_binaries
   mm.mm.run_file(fmwk)
File "build/bdist.macosx-10.3-i386/egg/macholib/MachOGraph.py", line 68,
in run_file
   self.scan_node(m)
File "build/bdist.macosx-10.3-i386/egg/macholib/MachOGraph.py", line 91,
in scan_node
   m = self.load_file(filename, caller=node)
File "build/bdist.macosx-10.3-i386/egg/macholib/MachOGraph.py", line 78,
in load_file
   return self.load_file(newname, caller=caller)
File "build/bdist.macosx-10.3-i386/egg/macholib/MachOGraph.py", line 80,
in load_file
   m = self.createNode(MachO, name)
File "build/bdist.macosx-10.3-i386/egg/macholib/ MachOStandalone.py", line
23, in createNode
   res = super(FilteredMachOGraph, self).createNode(cls, name)
File "build/bdist.macosx-10.3-i386/egg/altgraph/ObjectGraph.py", line 148,
in createNode
   m = cls(name, *args, **kw)
File "build/bdist.macosx-10.3-i386/egg/macholib/MachO.py", line 61, in
__init__
   self.load(file(filename, 'rb'))
File "build/bdist.macosx-10.3-i386/egg/macholib/MachO.py", line 71, in
load
   self.load_fat(fh)
File "build/bdist.macosx-10.3-i386/egg/macholib/MachO.py", line 82, in
load_fat
   self.load_header(fh, arch.offset, arch.size)
File "build/bdist.macosx-10.3-i386/egg/macholib/MachO.py", line 106, in
load_header
   hdr = MachOHeader(self, fh, offset, size, magic, hdr, endian)
File "build/bdist.macosx-10.3-i386/egg/macholib/MachO.py", line 146, in
__init__
   self.load(fh)
File "build/bdist.macosx-10.3-i386/egg/macholib/MachO.py", line 178, in
load
   raise ValueError("Unknown load command: %d" % (cmd_load.cmd,))
ValueError: Unknown load command: 27
/Users/joel/Documents/OT Video Games/SAVI Learning Tool Prototype ver
2.3/build/bdist.macosx-10.3-i386/egg/macholib/MachO.py(178)load()
(Pdb) cont
I've tried using the debugger to determine what's going on but it remains a
mystery. (OTOH, if I type "cont",  it immediately ends the script and
returns to the Unix prompt.) Any thoughts?
Thanks for any help you're willing to provide -- from your sunny retirement
as py2app maintainer!
-- Joel, working desperately on a deadline...




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

Reply via email to