[Pythonmac-SIG] py2app error

Nathan Lemoine lemoine.nathan at gmail.com
Fri Jul 30 02:59:50 CEST 2010


I installed the 0.5.2 update, and I've tried making just a very simple  
pyglet app to play a movie file so that you all could try it if you  
want on your python distributions:

import pyglet

vidPath="video.avi" ##put the path to a video file here
window = pyglet.window.Window()
source = pyglet.media.StreamingSource()
MediaLoad = pyglet.media.load(vidPath)
player = pyglet.media.Player()
player.queue(MediaLoad)
player.play()

@window.event
def on_draw():
	player.get_texture().blit(0,0)

pyglet.app.run()

Executing python setup.py py2app still gives me the same error:

Traceback (most recent call last):
   File "/Library/Python/2.5/site-packages/py2app-0.5.2-py2.5.egg/ 
py2app/build_app.py", line 604, in _run
     self.run_normal()
   File "/Library/Python/2.5/site-packages/py2app-0.5.2-py2.5.egg/ 
py2app/build_app.py", line 675, in run_normal
     self.create_binaries(py_files, pkgdirs, extensions, loader_files)
   File "/Library/Python/2.5/site-packages/py2app-0.5.2-py2.5.egg/ 
py2app/build_app.py", line 739, in create_binaries
     dry_run=self.dry_run)
   File "/Library/Python/2.5/site-packages/py2app-0.5.2-py2.5.egg/ 
py2app/util.py", line 376, in byte_compile
     if force or newer(mod.filename, cfile):
   File "/Library/Python/2.5/site-packages/py2app-0.5.2-py2.5.egg/ 
py2app/util.py", line 172, in newer
     msource = get_mtime(source)
   File "/Library/Python/2.5/site-packages/py2app-0.5.2-py2.5.egg/ 
py2app/util.py", line 164, in get_mtime
     info = zf.getinfo(rest)
   File "/System/Library/Frameworks/Python.framework/Versions/2.5/lib/ 
python2.5/zipfile.py", line 462, in getinfo
     return self.NameToInfo[name]
KeyError: 'pyglet/__init__.pyc'
 > /System/Library/Frameworks/Python.framework/Versions/2.5/lib/ 
python2.5/zipfile.py(462)getinfo()
-> return self.NameToInfo[name]
(Pdb)

I ran it in alias mode as well and it bundled 'tester.app'  
successfully. When I attempted to run the bundle, I just got a dialog  
box that said 'tester Error' and brought me to the MacPython website.  
I'm not sure how to find out what the issue is with the aliased bundle.

Thanks for the help so far! I really appreciate it. I don't think I  
could figure this out on my own



On Jul 29, 2010, at 2:34 AM, Ronald Oussoren wrote:

>
> On 29 Jul, 2010, at 8:09, Ronald Oussoren wrote:
>
>>
>> On 28 Jul, 2010, at 18:38, Nathan Lemoine wrote:
>>
>>>
>>> Traceback (most recent call last):
>>> File "/Library/Python/2.5/site-packages/py2app-0.5-py2.5.egg/ 
>>> py2app/build_app.py", line 602, in _run
>>>  self.run_alias()
>>> File "/Library/Python/2.5/site-packages/py2app-0.5-py2.5.egg/ 
>>> py2app/build_app.py", line 548, in run_alias
>>>  dst = self.build_alias_executable(target, target.script)
>>> File "/Library/Python/2.5/site-packages/py2app-0.5-py2.5.egg/ 
>>> py2app/build_app.py", line 1145, in build_alias_executable
>>>  appdir, resdir, plist = self.create_bundle(target, script)
>>> File "/Library/Python/2.5/site-packages/py2app-0.5-py2.5.egg/ 
>>> py2app/build_app.py", line 1131, in create_bundle
>>>  use_runtime_preference=use_runtime_preference
>>> File "/Library/Python/2.5/site-packages/py2app-0.5-py2.5.egg/ 
>>> py2app/build_app.py", line 1120, in create_appbundle
>>>  extension=self.extension,
>>> File "/Library/Python/2.5/site-packages/py2app-0.5-py2.5.egg/ 
>>> py2app/create_appbundle.py", line 34, in create_appbundle
>>>  copy(srcmain, destmain)
>>> File "/Library/Python/2.5/site-packages/py2app-0.5-py2.5.egg/ 
>>> py2app/util.py", line 233, in mergecopy
>>>  return macholib.util.mergecopy(src, dest)
>>> File "build/bdist.macosx-10.5-i386/egg/macholib/util.py", line  
>>> 111, in mergecopy
>>>  copy2(src, dest)
>>> File "build/bdist.macosx-10.5-i386/egg/macholib/util.py", line 43,  
>>> in copy2
>>>  shutil.copy2(fsencoding(src), fsencoding(dst))
>>> File "/System/Library/Frameworks/Python.framework/Versions/2.5/lib/ 
>>> python2.5/shutil.py", line 91, in copy2
>>>  copyfile(src, dst)
>>> File "/System/Library/Frameworks/Python.framework/Versions/2.5/lib/ 
>>> python2.5/shutil.py", line 46, in copyfile
>>>  fsrc = open(src, 'rb')
>>> IOError: [Errno 2] No such file or directory: '/Library/Python/2.5/ 
>>> site-packages/py2app-0.5-py2.5.egg/py2app/apptemplate/prebuilt/ 
>>> main-i386'
>>>> /System/Library/Frameworks/Python.framework/Versions/2.5/lib/ 
>>>> python2.5/shutil.py(53)copyfile()
>>> -> fsrc.close()
>>>
>>> I went into the Python Framework folder and the only prebuilt  
>>> executeable in there is 32bit one, there isn't a main-i386 file.  
>>> Am I missing a file?
>>
>> You aren't missing a file, py2app doesn't have a main-i386 file.   
>> As a quick workaround you can copy /Library/Python/2.5/site- 
>> packages/py2app-0.5-py2.5.egg/py2app/apptemplate/prebuilt/main-fat   
>> to /Library/Python/2.5/site-packages/py2app-0.5-py2.5.egg/py2app/ 
>> apptemplate/prebuilt/main-i386.
>>
>> I will tweak py2app to better handle this, that will be in the next  
>> release (0.5.2, hopefully later this week).
>
> I've upload py2app 0.5.2. With this version I can build a pyobjc  
> application using python 2.5 (without the IOError exception), the  
> pyglet error is not yet fixed.
>
> Ronald
>



More information about the Pythonmac-SIG mailing list