views:

70

answers:

3

Other than cx_Freeze, are there any other current maintained tool suites to generate stand alone executables for Python 3k?

Are there any other techniques for minimizing preinstallation requirements under Windows?

+2  A: 

I know of only cx_Freeze to build Python 3 executables. I asked a similar question a few month ago (which can be found here).
Maybe that already helps?

Matze
Hmm, a damn shame that nothing else exists. It's also a shame that Python makes for awful executables too.
Matt Joiner
+1  A: 

There doesn't seem to be another choice of tool at the moment.

There's nothing stopping you from including a prebuilt Python environment in your package/installer and either creating an appropriate shortcut to launch the Python app, or creating a separate executable that launches the Python app (or even linking the Python interpreter into the executable and using it like that...). It just takes some more effort making sure you've got all the right pieces (like .dlls) where they need to be.

Remember, Python doesn't have to be "installed" per se, you just need to make sure it knows where to find everything (e.g. set the appropriate environment variables like PYTHONPATH in whatever launcher you're using).

Nicholas Knight
Could this be done most easily using `virtualenv`? Do you know of any tutorials that show how this could be done?
Craig McQueen
A: 

For Windows, I think py2exe is a good option. It's described as follows:

py2exe is a Python Distutils extension which converts Python scripts into executable Windows programs, able to run without requiring a Python installation.

And it works with Python 3.x.

(As a bonus, there's py2app that does the trick on Mac OS X.)

Fabian Fagerholm
py2exe is only available for 2.3 through 2.7. Where do you see a Python 3.x version?
Nicholas Knight
You have to run py2exe with Python 2.3-2.7, but it can package Python 3 programs. There's a mention of one special consideration that applies to 2.6, 2.7, 3.0 and 3.1 in the tutorial (http://www.py2exe.org/index.cgi/Tutorial#Step529).
Fabian Fagerholm
There's mention, but it sux. Big difference.
Matt Joiner
The question was "are there any other techniques". But fair enough.
Fabian Fagerholm