Tim Peters | fe8a566 | 2006-03-01 06:28:58 +0000 | [diff] [blame] | 1 | Welcome to the "PC" subdirectory of the Python distribution |
| 2 | *********************************************************** |
| 3 | |
| 4 | *** Note: the project files for MS VC++ 7.1 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. |
| 8 | |
| 9 | This "PC" subdirectory contains complete project files to make |
| 10 | several older PC ports of Python, as well as all the PC-specific |
| 11 | Python source files. It should be located in the root of the |
| 12 | Python distribution, and there should be directories "Modules", |
| 13 | "Objects", "Python", etc. in the parent directory of this "PC" |
| 14 | subdirectory. Be sure to read the documentation in the Python |
| 15 | distribution. |
| 16 | |
| 17 | Python requires library files such as string.py to be available in |
| 18 | one or more library directories. The search path of libraries is |
| 19 | set up when Python starts. To see the current Python library search |
| 20 | path, start Python and enter "import sys" and "print sys.path". |
| 21 | |
| 22 | All PC ports use this scheme to try to set up a module search path: |
| 23 | |
| 24 | 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 | |
| 34 | The best installation strategy is to put the Python executable (and |
| 35 | DLL, for Win32 platforms) in some convenient directory such as |
| 36 | C:/python, and copy all library files and subdirectories (using XCOPY) |
| 37 | to C:/python/lib. Then you don't need to set PYTHONPATH. Otherwise, |
| 38 | set the environment variable PYTHONPATH to your Python search path. |
| 39 | For example, |
| 40 | set PYTHONPATH=.;d:\python\lib;d:\python\lib\win;d:\python\lib\dos-8x3 |
| 41 | |
| 42 | There are several add-in modules to build Python programs which use |
| 43 | the 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, |
| 46 | WPY and wxPython. |
| 47 | |
| 48 | To 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 |
| 51 | files or build settings so you can make custom builds. |
| 52 | |
| 53 | pyconfig.h An important configuration file specific to PC's. |
| 54 | |
| 55 | config.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 | |
| 59 | testpy.py A Python test program. Run this to test your |
| 60 | 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). |
| 64 | |
| 65 | |
| 66 | Additional files and subdirectories for 32-bit Windows |
| 67 | ====================================================== |
| 68 | |
| 69 | python_nt.rc Resource compiler input for python15.dll. |
| 70 | |
| 71 | dl_nt.c, import_nt.c |
| 72 | Additional sources used for 32-bit Windows features. |
| 73 | |
| 74 | getpathp.c Default sys.path calculations (for all PC platforms). |
| 75 | |
| 76 | dllbase_nt.txt A (manually maintained) list of base addresses for |
| 77 | various DLLs, to avoid run-time relocation. |
| 78 | |
| 79 | example_nt A subdirectory showing how to build an extension as a |
| 80 | DLL. |
| 81 | |
| 82 | Visual Studio 6.0 |
| 83 | ================= |
| 84 | The subdirectory VC6 contains Visual Studio 6 project files. These |
| 85 | were originally located in the PCBuild directory, but are no longer |
| 86 | maintained. |
| 87 | |
| 88 | |
| 89 | IBM VisualAge C/C++ for OS/2 |
| 90 | ============================ |
| 91 | |
| 92 | See os2vacpp/readme.txt. This platform is supported by Jeff Rush. |
| 93 | |
| 94 | |
| 95 | Note for Windows 3.x and DOS users |
| 96 | ================================== |
| 97 | |
| 98 | Neither Windows 3.x nor DOS is supported any more. The last Python |
| 99 | version that supported these was Python 1.5.2; the support files were |
| 100 | present in Python 2.0 but weren't updated, and it is not our intention |
| 101 | to support these platforms for Python 2.x. |