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

Re: [pygame] Streamlined Installation?



Jasper Phillips wrote:
On Mon, 21 Apr 2003, Pete Shinners wrote:
Jasper Phillips wrote:
What does Pygame use to create it's installation packages? I'd like to do
something similar myself, as I want to show the game I've been working on to
a bunch of busy people, and fear that needing to install 4 libraries, set
path, etc. will put people off.
for python itself i just use 'distutils', which is the python utility
that compiles all of pygame and can also make various packages and
installers.

for the different 'window binary' games that people have been using for
pygame, most use the "PY2EXE" script, which is a little hairy to use,
but gets good results in the end. i have a 'helper' script which assists
in getting all the proper arguments passed to py2exe.
http://pygame.org/ftp/pygame2exe.py

py2exe creates a subdirectory with everything needed to run your game
standalone. from there you can zip or use one of the more exciting free
installer tools out there. for testing the zip is probably easiest. for
real releases, most people like to use the free INNO Setup tool which
handles all the installer/uninstaller/startmenu stuff for you.

i have a short little tutorial online with more information about
building the actual executable. http://pygame.org/docs/tut/Executable.html
Hrm. This doesn't work for me. :-( It apparently copies all .pyd files
needed into the same directory, overwriting in the case of two .pyd's with
the same name. PyOpenGL has (at least) three different __init___.pyd's...

Someone must have run into this before... Any advice on how to get around
this? At the moment I'm looking into hacking py2exe, but I'd really
rather avoid that. :-/
I've used Gordon McMillan's installer with success on PyOpenGL apps. If you do a CVS checkout of the visionegg, in the base directory there's a script called build-win-exe-demos.py which automates most of the process in a fairly ugly way.

Cheers!
Andrew