blob: bb685815d649614e68488a633e9e957ebe7010e7 [file] [log] [blame]
Guido van Rossum082d2891997-05-16 16:24:09 +00001Welcome to the "PC" subdirectory of the Python distribution!
2************************************************************
3
Guido van Rossuma0e6be71999-04-12 14:49:01 +00004*** Note: the project files for MS VC++ 5.0 and 6.0 are now in the
5*** PCbuild directory. See the file readme.txt there for build
6*** instructions. There is some information below that might
7*** still be relevant.
Guido van Rossum082d2891997-05-16 16:24:09 +00008
9This "PC" subdirectory contains complete project files to make
Guido van Rossuma0e6be71999-04-12 14:49:01 +000010several older PC ports of Python, as well as all the PC-specific
Guido van Rossum082d2891997-05-16 16:24:09 +000011Python source files. It should be located in the root of the
12Python distribution, and there should be directories "Modules",
13"Objects", "Python", etc. in the parent directory of this "PC"
Guido van Rossum1aa7e3a1997-05-19 14:16:21 +000014subdirectory. Be sure to read the documentation in the Python
15distribution.
Guido van Rossum082d2891997-05-16 16:24:09 +000016
Guido van Rossum1aa7e3a1997-05-19 14:16:21 +000017Python requires library files such as string.py to be available in
18one or more library directories. The search path of libraries is
19set up when Python starts. To see the current Python library search
20path, start Python and enter "import sys" and "print sys.path".
21
Guido van Rossum831c2581997-08-14 22:57:33 +000022All PC ports use this scheme to try to set up a module search path:
Guido van Rossum1aa7e3a1997-05-19 14:16:21 +000023
Guido van Rossum831c2581997-08-14 22:57:33 +000024 1) The script location; the current directory without script.
25 2) The PYTHONPATH variable, if set.
26 3) For Win32 platforms (NT/95), paths specified in the Registry.
27 4) Default directories lib, lib/win, lib/test, lib/tkinter;
28 these are searched relative to the environment variable
29 PYTHONHOME, if set, or relative to the executable and its
30 ancestors, if a landmark file (Lib/string.py) is found ,
31 or the current directory (not useful).
32 5) The directory containing the executable.
33
34The best installation strategy is to put the Python executable (and
35DLL, for Win32 platforms) in some convenient directory such as
36C:/python, and copy all library files and subdirectories (using XCOPY)
37to C:/python/lib. Then you don't need to set PYTHONPATH. Otherwise,
38set the environment variable PYTHONPATH to your Python search path.
39For example,
Guido van Rossumffeb59381997-12-17 21:27:23 +000040 set PYTHONPATH=.;d:\python\lib;d:\python\lib\win;d:\python\lib\dos-8x3
Guido van Rossum1aa7e3a1997-05-19 14:16:21 +000041
Guido van Rossum082d2891997-05-16 16:24:09 +000042There are several add-in modules to build Python programs which use
43the native Windows operating environment. The ports here just make
44"QuickWin" and DOS Python versions which support a character-mode
45(console) environment. Look in www.python.org for Tkinter, PythonWin,
46WPY and wxPython.
47
48To make a Python port, start the Integrated Development Environment
49(IDE) of your compiler, and read in the native "project file"
50(or makefile) provided. This will enable you to change any source
51files or build settings so you can make custom builds.
52
53config.h An important configuration file specific to PC's.
54
55config.c The list of C modules to include in the Python PC
56 version. Manually edit this file to add or
57 remove Python modules.
58
59testpy.py A Python test program. Run this to test your
Guido van Rossum831c2581997-08-14 22:57:33 +000060 Python port. It should produce copious output,
61 ending in a report on how many tests were OK, how many
62 failed, and how many were skipped. Don't worry about
63 skipped tests (these test unavailable optional features).
Guido van Rossum082d2891997-05-16 16:24:09 +000064
65src A subdirectory used only for VC++ version 1.5 Python
66 source files. See below. The other compilers do not
67 use it. They reference the actual distribution
68 directories instead.
69
70
Guido van Rossum082d2891997-05-16 16:24:09 +000071Additional files and subdirectories for 32-bit Windows
72======================================================
73
Guido van Rossume34b7de1997-05-19 20:01:57 +000074python_nt.rc Resource compiler input for python15.dll.
Guido van Rossum082d2891997-05-16 16:24:09 +000075
Guido van Rossum831c2581997-08-14 22:57:33 +000076dl_nt.c, import_nt.c
Guido van Rossum082d2891997-05-16 16:24:09 +000077 Additional sources used for 32-bit Windows features.
78
Guido van Rossum831c2581997-08-14 22:57:33 +000079getpathp.c Default sys.path calculations (for all PC platforms).
Guido van Rossum082d2891997-05-16 16:24:09 +000080
81dllbase_nt.txt A (manually maintained) list of base addresses for
82 various DLLs, to avoid run-time relocation.
83
Guido van Rossum082d2891997-05-16 16:24:09 +000084example_nt A subdirectory showing how to build an extension as a
85 DLL.
86
Guido van Rossum082d2891997-05-16 16:24:09 +000087
88Microsoft Visual C++ Version 1.5 (16-bit Windows)
89=================================================
90
91Since VC++1.5 does not handle long file names, it is necessary
92to run the "makesrc.exe" program in this directory to copy
93Python files from the distribution to the directory "src"
94with shortened names. Included file names are shortened too.
95Do this before you attempt to build Python.
96
97The "makesrc.exe" program is a native NT program, and you must
98have NT, Windows 95 or Win32s to run it. Otherwise you will need
99to copy distribution files to src yourself.
100
101The makefiles are named *.mak and are located in directories
102starting with "vc15_". NOTE: When dependencies are scanned
103VC++ will create dependencies for directories which are not
104used because it fails to evaluate "#define" properly. You
105must manaully edit makefiles (*.mak) to remove references to
106"sys/" and other bad directories.
107
108vc15_lib A static Python library. Create this first because is
109 is required for vc15_w31.
110
111vc15_w31 A Windows 3.1x Python QuickWin (console-mode)
112 Python including sockets. Requires vc15_lib.
113
114
115Watcom C++ Version 10.6
116=======================
117
118The project file for the Watcom compiler is ./python.wpj.
119It will build Watcom versions in the directories wat_*.
120
121wat_dos A 32-bit extended DOS Python (console-mode) using the
122 dos4gw DOS extender. Sockets are not included.
123
124wat_os2 A 32-bit OS/2 Python (console-mode).
125 Sockets are not included.
Guido van Rossum0ba48ba1997-11-22 21:58:14 +0000126
Guido van Rossumcee1dca1997-12-05 22:06:23 +0000127
Guido van Rossum0ba48ba1997-11-22 21:58:14 +0000128IBM VisualAge C/C++ for OS/2
129============================
130
Guido van Rossumcee1dca1997-12-05 22:06:23 +0000131See os2vacpp/readme.txt. This platform is supported by Jeff Rush.