Packaging in windows?

As part of CS-L's warmup I've been trying to package our test project under windows. We're using PyOpenGL and PyGame. I have yet to complete my task, which would have been extremely bad if this were the competition. I'm struggling with getting Py2Exe to even package it to a runnable state. It keeps bumping up against Numpy dependencies which are driving me mad. Even using PyMike's PySetup has it failing to package a simple pure pygame script. Besides which I do not know if Py2Exe would work since the PyOpenGL docs says 3.0 (which is what I have installed) does not work with Py2Exe.

The other packaging method I've experimented with is bbfreeze. I've had more success using it and it is quite brilliantly simple to use. However it seems to have a problem with pygame.mixer.music, which it isn't able to load. Everything else seems to be working but music, which I think is a deal breaker. So any ideas on where to go about figuring out this seemingly black art of packaging?

(log in to comment)

Comments

After a whole day I spotted a newsgroup post stating that the mixer.music woes started in 1.8. Rolling back to 1.7 in windows did it for me. Hope this helps teams in packaging. Don't use pygame 1.8! I found the 1.7.1 installer for Python 2.5 here
Can you tell it to include mixer_music.dll manually?

Maybe it's not finding it by itself.

I recall an older version of py2exe works better... but can't remember which one it is off the top of my head.
there's pyopengl 2.x builds here which work with py2exe.

http://thorbrian.com/pyopengl/builds.php

ps. Where is the latest skellington? I can't find the home page.
Here's a basic skellington I hacked up... which works for me with a basic pygame game.

http://rene.f0o.com/~rene/stuff/skellington-1.10-hacked.tar.gz

I had to change the setup.py a little. Also had to remove the lib dir, and just put my code in the main dir.

python setup.py py2exe
cd dist
MyCoolGame.exe



Using:
pygame 1.8.1
py2exe-0.6.8.win32-py2.5.exe


cheers.
Problems with pygame 1.8.1, pygame.mixer.music, and the latest py2exe can be fixed by using: 'includes' : ['pygame.mixer.music'] in opts for py2exe in setup.py. I had the same problem with my LD12 entry and struggled for about a half a day until I found an obscure related newsgroup post with the answer.
Nice to know pygame 1.8.1 can be py2exe'd. I'm sticking with 1.7 though since thats the version we have in our Ubuntu installs anyway. Also, bbfreeze is really easy to use. It's not necessary to make a setup script, although that is the better way to use it. Only thing is the output is a big messy directory but I'll take just works over looks nice for a time-limited competition.
Did you mean pygame.mixer_music? cause that seems to work better.