11THE FREEZE SCRIPT
22=================
33
4+ (Directions for Windows NT are at the end of this file.)
5+
46
57What is Freeze?
68---------------
@@ -77,9 +79,6 @@ where hello.py is your program and freeze.py is the main file of
7779Freeze (in actuality, you'll probably specify an absolute pathname
7880such as /usr/joe/python/Tools/freeze/freeze.py).
7981
80- (With Python 1.4, freeze is much more likely to work "out of the box"
81- than before, provided Python has been installed properly.)
82-
8382
8483What do I do next?
8584------------------
@@ -105,4 +104,36 @@ proper install, you should do "make install" in the Python root
105104directory.
106105
107106
107+ Usage under Windows NT
108+ ----------------------
109+
110+ Under Windows NT, you *must* use the -p option and point it to the top
111+ of the Python source tree.
112+
113+ WARNING: the resulting executable is not self-contained; it requires
114+ the Python DLL, currently PYTHON15.DLL (it does not require the
115+ standard library of .py files though).
116+
117+ The driver script generates a Makefile that works with the Microsoft
118+ command line C compiler (CL). To compile, run "nmake"; this will
119+ build a target "hello.exe" if the source was "hello.py". Only the
120+ files frozenmain.c and frozen.c are used; no config.c is generated or
121+ used, since the standard DLL is used.
122+
123+ In order for this to work, you must have built Python using the VC++
124+ (Developer Studio) 5.0 compiler. The provided project builds
125+ python15.lib in the subdirectory pcbuild\Release of thje Python source
126+ tree, and this is where the generated Makefile expects it to be. If
127+ this is not the case, you can edit the Makefile or (probably better)
128+ winmakemakefile.py (e.g., if you are using the 4.2 compiler, the
129+ python15.lib file is generated in the subdirectory vc40 of the Python
130+ source tree).
131+
132+ Freezing pure GUI applications has not yet been tried; there's a new
133+ -s option to specify the subsystem, but only the default ('console')
134+ has been tested. Freezing applications using Tkinter works; note that
135+ these will require that that _tkinter.dll is available and the right
136+ version of Tcl/Tk (the one that was used to build _tkinter.dll) is
137+ installed.
138+
108139--Guido van Rossum (home page: http://www.python.org/~guido/)
0 commit comments