[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: [pygame] pygame.mixer.music broken in py2app games?



On Sat, Dec 13, 2008 at 10:41:59AM +1100, René Dudfield wrote:
> hi,
> 
> Is there a way to tell py2app to include the pygame.mixer_music .so ?

I don't know. I'll see what I can figure out.

> Did you try it with using pygame.mixer_music as the module name?

Yes, that made no difference.

> Does the aliens example in the pygame source work with music for you
> when you py2app it?
>     examples/macosx/aliens_app_example/

Hmmm... I can try... but where do I find the datafiles for the aliens 
example? examples/macosx/aliens_app_example/data/ seems to be missing.

---
James Paige

> 
> 
> On Sat, Dec 13, 2008 at 10:15 AM, James Paige <Bob@xxxxxxxxxxxxxxxxxxx> wrote:
> > I can run
> >
> >  import pygame.mixer_music
> >
> > Without any importerror, but it does not have any effect on this
> > problem.
> >
> > Also, I can see that pygame.mixer_music.pyc is inside my
> > site-packages.zip (no matter how I import)
> >
> > ---
> > James Paige
> >
> > On Sat, Dec 13, 2008 at 10:06:47AM +1100, René Dudfield wrote:
> >> hi,
> >>
> >> can you try this:
> >> import mixer_music
> >>
> >> ?
> >>
> >> I'm not near a mac to try it out at the moment, sorry.
> >>
> >>
> >> cheers,
> >>
> >> On Sat, Dec 13, 2008 at 10:04 AM, James Paige <Bob@xxxxxxxxxxxxxxxxxxx> wrote:
> >> > But pygame.mixer.music isn't a module. You can;t ever do that,
> >> > regardless of whether or not you are using py2app. Try it.
> >> >
> >> > darkside:~/src/hamster/stegavorto/musictest james$ python
> >> > Python 2.5.2 (r252:60911, Feb 22 2008, 07:57:53)
> >> > [GCC 4.0.1 (Apple Computer, Inc. build 5363)] on darwin
> >> > Type "help", "copyright", "credits" or "license" for more information.
> >> >>>> import pygame.mixer.music
> >> > Traceback (most recent call last):
> >> >  File "<stdin>", line 1, in <module>
> >> > ImportError: No module named music
> >> >
> >> > I think .music genuinely is a simple attribute of pygame.mixer and not a
> >> > module. I don't understand why, but that seems to be the case.
> >> >
> >> > ---
> >> > James Paige
> >> >
> >> > On Fri, Dec 12, 2008 at 04:53:11PM -0600, Charlie Nolan wrote:
> >> >> What I'm saying is that you should try explicitly importing
> >> >> pygame.mixer.music *as a module*.  It may be that, for whatever
> >> >> reason, py2app is assuming it's a simple attribute of pygame.mixer and
> >> >> not bundling the module.
> >> >>
> >> >> Mind you, that's not how it's *supposed* to work, but so far it's the
> >> >> only reason I can think of why pygame might work, but
> >> >> pygame.mixer.music not.
> >> >>
> >> >> -FM
> >> >>
> >> >> On Fri, Dec 12, 2008 at 3:15 PM, James Paige <Bob@xxxxxxxxxxxxxxxxxxx> wrote:
> >> >> > well, I just said "from pygame.mixer import music" because that is the
> >> >> > shortest line I could find to show the problem, but in my actual code I
> >> >> > do something more like this:
> >> >> >
> >> >> >  import pygame
> >> >> >  pygame.init()
> >> >> >  pygame.mixer.init()
> >> >> >  pygame.mixer.music.load("song.ogg")
> >> >> >
> >> >> > And it crashes something like this when run from a py2app bundle
> >> >> >
> >> >> > Traceback (most recent call last):
> >> >> >  File
> >> >> > "/Users/james/src/hamster/stegavorto/musictest/dist/musictest.app/Contents/Resources/__boot__.py",
> >> >> > line 31, in <module>
> >> >> >    _run('test.py')
> >> >> >  File
> >> >> > "/Users/james/src/hamster/stegavorto/musictest/dist/musictest.app/Contents/Resources/__boot__.py",
> >> >> > line 28, in _run
> >> >> >    execfile(path, globals(), globals())
> >> >> >  File
> >> >> > "/Users/james/src/hamster/stegavorto/musictest/dist/musictest.app/Contents/Resources/test.py",
> >> >> > line 4, in <module>
> >> >> >    pygame.mixer.music.load("song.ogg")
> >> >> > AttributeError: 'module' object has no attribute 'music'
> >> >> >
> >> >> > ---
> >> >> > James Paige
> >> >> >
> >> >> > On Fri, Dec 12, 2008 at 01:31:46PM -0600, Charlie Nolan wrote:
> >> >> >> I haven't had any problems with it.  Maybe the from/import construct
> >> >> >> is confusing py2app?  Try this:
> >> >> >> import pygame.mixer.music as music
> >> >> >> -FM
> >> >> >>
> >> >> >> On Fri, Dec 12, 2008 at 12:26 PM, James Paige <Bob@xxxxxxxxxxxxxxxxxxx> wrote:
> >> >> >> > Hey, I was just working on bundling up a game for Mac with py2app, and
> >> >> >> > the app always crashes on any use of pygame.mixer.music. I can reproduce
> >> >> >> > it with code this simple:
> >> >> >> >
> >> >> >> >  from pygame.mixer import music
> >> >> >> >
> >> >> >> > This works perfectly when I run it normally, but in a py2app bundle that
> >> >> >> > line (or any line that accesses pygame.mixer.music) will crash with an
> >> >> >> > AttributeError
> >> >> >> >
> >> >> >> > Has anybody else seen this?
> >> >> >> >
> >> >> >> > I am using Mac OS X 10.3 python 2.5.2 pygame 1.8.2 and I have tried both
> >> >> >> > py2app 0.3.6 (stable) and py2app 0.4.4 (dev)
> >> >> >> >
> >> >> >> > ---
> >> >> >> > James Paige
> >> >> >> >
> >> >> >>
> >> >> >>
> >> >> >
> >> >>
> >> >>
> >> >
> >>
> >>
> >
> 
>