annotate README @ 3546:3f7cdf1663f7 legacy-trunk

A version of swed that can import html files. Also demonstrates implementing object handlers in Python.
author Jack Jansen <jack.jansen@cwi.nl>
date Tue, 07 May 1996 15:25:36 +0000
parents 02435fd95277
children 97b1c2a70eae
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3174
f7789945b8de release 1.3 for real
Guido van Rossum <guido@python.org>
parents: 3110
diff changeset
1 This is Python release 1.3
f7789945b8de release 1.3 for real
Guido van Rossum <guido@python.org>
parents: 3110
diff changeset
2 ==========================
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
3
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
4
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
5 What's new in this release?
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
6 ---------------------------
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
7
3008
a51022f1980f 1.3b1 notes
Guido van Rossum <guido@python.org>
parents: 2730
diff changeset
8 - Keyword parameters (see the last chapter of the tutorial).
a51022f1980f 1.3b1 notes
Guido van Rossum <guido@python.org>
parents: 2730
diff changeset
9 - Third argument to raise (the stacktrace to provide).
a51022f1980f 1.3b1 notes
Guido van Rossum <guido@python.org>
parents: 2730
diff changeset
10 - Faster function and method calls.
a51022f1980f 1.3b1 notes
Guido van Rossum <guido@python.org>
parents: 2730
diff changeset
11 - Jim Fulton's abstract object interface (Include/abstract.h).
a51022f1980f 1.3b1 notes
Guido van Rossum <guido@python.org>
parents: 2730
diff changeset
12 - Support for Tk 4.0 in Tkinter (Tkinter now supports keywords!).
a51022f1980f 1.3b1 notes
Guido van Rossum <guido@python.org>
parents: 2730
diff changeset
13 - Rewritten htmllib.py (HTML parser), with new formatter.py.
a51022f1980f 1.3b1 notes
Guido van Rossum <guido@python.org>
parents: 2730
diff changeset
14 - Rewritten rexec.py (restricted execution).
a51022f1980f 1.3b1 notes
Guido van Rossum <guido@python.org>
parents: 2730
diff changeset
15 - New modules ni.py and ihooks.py (package support and more).
3174
f7789945b8de release 1.3 for real
Guido van Rossum <guido@python.org>
parents: 3110
diff changeset
16 - And lots more that you'll have to discover on your own (see chapter
3399
02435fd95277 Added ref to Misc/NEWS file; added hint to run regen script on Linux.
Guido van Rossum <guido@python.org>
parents: 3233
diff changeset
17 12 of the Tutorial or the Misc/NEWS file).
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
18
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
19
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
20 What is Python anyway?
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
21 ----------------------
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
22
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
23 Python is an interpreted object-oriented programming language, and is
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
24 often compared to Tcl, Perl or Scheme. For a quick summary of what
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
25 Python can mean for a UNIX/C programmer, read Misc/BLURB.LUTZ.
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
26
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
27
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
28 If you don't read instructions
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
29 ------------------------------
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
30
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
31 Congratulations on getting this far. :-)
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
32
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
33 To start building right away (on UNIX): type "./configure" in the
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
34 current directory and when it finishes, type "make". The section
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
35 Build Instructions below is still recommended reading. :-)
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
36
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
37
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
38 Copyright issues
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
39 ----------------
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
40
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
41 Python is COPYRIGHTED but free to use for all. See the full copyright
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
42 notice at the end of this file.
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
43
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
44 The Python distribution is *not* affected by the GNU Public Licence
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
45 (GPL). There are interfaces to some GNU code but these are entirely
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
46 optional and no GNU code is distributed with Python. For all these
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
47 packages, GPL-free public domain versions also exist.
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
48
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
49
3110
5c0a7f7836fb added psa plug
Guido van Rossum <guido@python.org>
parents: 3008
diff changeset
50 A modest plug
5c0a7f7836fb added psa plug
Guido van Rossum <guido@python.org>
parents: 3008
diff changeset
51 =============
5c0a7f7836fb added psa plug
Guido van Rossum <guido@python.org>
parents: 3008
diff changeset
52
5c0a7f7836fb added psa plug
Guido van Rossum <guido@python.org>
parents: 3008
diff changeset
53
3174
f7789945b8de release 1.3 for real
Guido van Rossum <guido@python.org>
parents: 3110
diff changeset
54 *************************************************************************
f7789945b8de release 1.3 for real
Guido van Rossum <guido@python.org>
parents: 3110
diff changeset
55 * *
f7789945b8de release 1.3 for real
Guido van Rossum <guido@python.org>
parents: 3110
diff changeset
56 * Python exists, and is free, thanks to the contributed efforts *
f7789945b8de release 1.3 for real
Guido van Rossum <guido@python.org>
parents: 3110
diff changeset
57 * of many people. The PSA was created to maximize the results *
f7789945b8de release 1.3 for real
Guido van Rossum <guido@python.org>
parents: 3110
diff changeset
58 * of those efforts, by helping to coordinate them. The PSA *
f7789945b8de release 1.3 for real
Guido van Rossum <guido@python.org>
parents: 3110
diff changeset
59 * operates web, ftp and email servers, organizes Python *
f7789945b8de release 1.3 for real
Guido van Rossum <guido@python.org>
parents: 3110
diff changeset
60 * workshops, and engages in other activities that benefit the *
f7789945b8de release 1.3 for real
Guido van Rossum <guido@python.org>
parents: 3110
diff changeset
61 * Python user community. The PSA is seeking support for these *
f7789945b8de release 1.3 for real
Guido van Rossum <guido@python.org>
parents: 3110
diff changeset
62 * activities. See this URL for information on how to join: *
f7789945b8de release 1.3 for real
Guido van Rossum <guido@python.org>
parents: 3110
diff changeset
63 * http://www.python.org/psa/Joining.html *
f7789945b8de release 1.3 for real
Guido van Rossum <guido@python.org>
parents: 3110
diff changeset
64 * *
f7789945b8de release 1.3 for real
Guido van Rossum <guido@python.org>
parents: 3110
diff changeset
65 *************************************************************************
3110
5c0a7f7836fb added psa plug
Guido van Rossum <guido@python.org>
parents: 3008
diff changeset
66
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
67
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
68 Build instructions
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
69 ==================
1453
d773a5f89426 New files
Guido van Rossum <guido@python.org>
parents:
diff changeset
70
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
71 Before you start building Python, you must first configure it. This
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
72 entails (at least) running the script "./configure", which figures out
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
73 your system configuration and creates several Makefiles. (It takes a
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
74 minute or two -- please be patient!) When it's done, you are ready to
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
75 run make. Typing "make" in the toplevel directory will recursively
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
76 run make in each of the subdirectories Parser, Objects, Python and
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
77 Modules, creating a library file in each one. The executable of the
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
78 interpreter is built in the Modules subdirectory and moved up here
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
79 when it is built. If you want or need to, you can also chdir into
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
80 each subdirectory in turn and run make there manually (do the Modules
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
81 subdirectory last!).
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
82
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
83 NOTE: if you rerun the configure script with different options, remove
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
84 all object files by running "make clean" before rebuilding. Believe
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
85 it or not, "make clean" sometimes helps to clean up other inexplicable
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
86 problems as well. Try it before sending in a bug report!
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
87
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
88
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
89 Troubleshooting
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
90 ---------------
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
91
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
92 If you run into trouble, see section 3 of the FAQ (file Misc/FAQ) for
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
93 hints on what can go wrong, and how to fix it.
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
94
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
95
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
96 Platform specific notes
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
97 -----------------------
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
98
3174
f7789945b8de release 1.3 for real
Guido van Rossum <guido@python.org>
parents: 3110
diff changeset
99 (Some of these may no longer apply. If you find you can build Python
f7789945b8de release 1.3 for real
Guido van Rossum <guido@python.org>
parents: 3110
diff changeset
100 on these platforms without the special directions mentioned here, let
f7789945b8de release 1.3 for real
Guido van Rossum <guido@python.org>
parents: 3110
diff changeset
101 me know so I can remove them!)
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
102
3399
02435fd95277 Added ref to Misc/NEWS file; added hint to run regen script on Linux.
Guido van Rossum <guido@python.org>
parents: 3233
diff changeset
103 Linux: Once you've built Python, use it to run the regen.py script in
02435fd95277 Added ref to Misc/NEWS file; added hint to run regen script on Linux.
Guido van Rossum <guido@python.org>
parents: 3233
diff changeset
104 the Lib/linux1 directory. Apparently the files as distributed
02435fd95277 Added ref to Misc/NEWS file; added hint to run regen script on Linux.
Guido van Rossum <guido@python.org>
parents: 3233
diff changeset
105 don't match the system headers on some Linux versions.
02435fd95277 Added ref to Misc/NEWS file; added hint to run regen script on Linux.
Guido van Rossum <guido@python.org>
parents: 3233
diff changeset
106
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
107 AIX: Read the file Misc/AIX-NOTES before trying to build.
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
108
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
109 HP-UX: Read the file Misc/HPUX-NOTES if you want to be able to
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
110 use shared libraries for dynamically loaded modules.
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
111
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
112 Minix: When using ack, use "CC=cc AR=aal RANLIB=: ./configure"!
1882
f84b64df09c3 The usual junk
Guido van Rossum <guido@python.org>
parents: 1819
diff changeset
113
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
114 SCO: 1) Everything works much better if you add -U__STDC__ to the
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
115 defs. This is because all the SCO header files are broken.
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
116 Anything that isn't mentioned in the C standard it's
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
117 conditionally excluded when __STDC__ is defined.
1453
d773a5f89426 New files
Guido van Rossum <guido@python.org>
parents:
diff changeset
118
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
119 2) Due to the U.S. export restrictions, SCO broke the crypt
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
120 stuff out into a separate library, libcrypt_i.a so the LIBS
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
121 needed be set to:
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
122
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
123 LIBS=' -lsocket -lcrypt_i'
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
124
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
125
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
126 Configuring the set of built-in modules
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
127 ---------------------------------------
2162
c9aea34ae4b6 add hint for NeXT users
Guido van Rossum <guido@python.org>
parents: 2131
diff changeset
128
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
129 You can configure the interpreter to contain fewer or more built-in
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
130 modules by editing the file Modules/Setup. This file is initially
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
131 copied (when the toplevel Makefile makes Modules/Makefile for the
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
132 first time) from Setup.in; if it does not exist yet, make a copy
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
133 yourself. Never edit Setup.in -- always edit Setup. Read the
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
134 comments in the file for information on what kind of edits you can
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
135 make. When you have edited Setup, Makefile and config.c in Modules
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
136 will automatically be rebuilt the next time you run make in the
1994
fb198e1316b9 the usual
Guido van Rossum <guido@python.org>
parents: 1973
diff changeset
137 toplevel directory.
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
138
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
139 Especially on SGI IRIX, there are modules that interface to many SGI
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
140 specific system libraries, e.g. the GL library and the audio hardware.
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
141
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
142
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
143 Setting the optimization/debugging options
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
144 ------------------------------------------
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
145
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
146 If you want to change the optimization/debugging options for the C
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
147 compiler, assign to the OPT variable on the toplevel make command;
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
148 e.g. "make OPT=-g" will build a debugging version of Python on most
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
149 platforms. The default is OPT=-O; a value for OPT in the environment
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
150 when the configure script is run overrides this default (likewise for
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
151 CC; and the initial value for LIBS is used as the base set of
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
152 libraries to link with).
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
153
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
154
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
155 Testing
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
156 -------
1453
d773a5f89426 New files
Guido van Rossum <guido@python.org>
parents:
diff changeset
157
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
158 To test the interpreter that you have just built, type "make test".
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
159 This runs the test set silently, twice (once with no compiled files,
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
160 once with the compiled files left by the previous test run). Each
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
161 test run should print "All tests OK." and nothing more. (The test set
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
162 does not test the built-in modules, but will find most other problems
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
163 with the interpreter.)
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
164
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
165 IMPORTANT: If the tests fail and you decide to mail a bug report,
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
166 *don't* include the output of "make test". It is useless. Run the
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
167 following command instead:
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
168
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
169 PYTHONPATH=../Lib:../Lib/test:./Modules ./python -c 'import testall'
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
170
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
171 (substituting the top of the source tree for .. if you built in a
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
172 different directory). This gives the output of the tests and shows
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
173 which test failed.
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
174
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
175
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
176 Installing
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
177 ----------
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
178
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
179 To install the interpreter as /usr/local/bin/python, type "make
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
180 install". To install the library as /usr/local/lib/python, type "make
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
181 libinstall". To install the manual page as
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
182 /usr/local/man/man1/python.1, type "make maninstall". To install the
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
183 Emacs editing mode for python, manually copy the file
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
184 Misc/python-mode.el to your local Emacs lisp directory. The directory
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
185 /usr/local can be overridden at configuration time by passing
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
186 --prefix=DIRECTORY to the configure script, or at make time by passing
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
187 "prefix=DIRECTORY" to make. See below for more information on --prefix.
1453
d773a5f89426 New files
Guido van Rossum <guido@python.org>
parents:
diff changeset
188
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
189 If you plan to do development of extension modules or to embed Python
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
190 in another application and don't want to reference the original source
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
191 tree, you can type "make inclinstall" and "make libainstall" to
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
192 install the include files and lib*.a files, respectively, as
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
193 /usr/local/include/Py/*.h and /usr/local/lib/python/lib/lib*.a. The
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
194 make libainstall target also installs copies of several other files
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
195 used or produced during the build process which are needed to build
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
196 extensions or to generate their Makefiles.
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
197
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
198
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
199 Configuration options and variables
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
200 -----------------------------------
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
201
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
202 Some special cases are handled by passing environment variables or
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
203 options to the configure script.
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
204
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
205 NOTE: if you rerun the configure script with different options, remove
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
206 all object files by running "make clean" before rebuilding.
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
207
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
208 --with(out)-gcc: The configure script uses gcc (the GNU C compiler) if
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
209 it finds it. If you don't want this, or if this compiler is
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
210 installed but broken on your platform, pass the option
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
211 --without-gcc. You can also pass "CC=cc" (or whatever the
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
212 name of the proper C compiler is) in the environment, but the
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
213 advantage of using --without-gcc is that this option is
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
214 remembered by the config.status script for its --recheck
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
215 option.
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
216
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
217 --prefix, --exec-prefix: If you want to install the binaries and the
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
218 Python library somewhere else than in /usr/local/{bin,lib},
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
219 you can pass the option --prefix=DIRECTORY; the interpreter
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
220 binary will be installed as DIRECTORY/bin/python and the
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
221 library files as DIRECTORY/lib/python/*. If you pass
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
222 --exec-prefix=DIRECTORY (as well) this overrides the
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
223 installation prefix for architecture-dependent files (like the
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
224 interpreter binary). Note that --prefix=DIRECTORY also
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
225 affects the default module search path (sys.path), when
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
226 Modules/config.c is compiled. Passing make the option
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
227 prefix=DIRECTORY (and/or exec_prefix=DIRECTORY) overrides the
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
228 prefix set at configuration time; this may be more convenient
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
229 than re-running the configure script if you change your mind
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
230 about the install prefix...
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
231
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
232 --with-readline: You can use the GNU readline library to improve the
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
233 interactive user interface: this gives you line editing and
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
234 command history when calling python interactively. You need
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
235 to configure build the GNU readline library before running the
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
236 configure script. Its sources are not distributed with
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
237 Python; you can ftp them from any GNU mirror site, or from its
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
238 home site:
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
239 <URL:ftp://slc2.ins.cwru.edu/pub/dist/readline-2.0.tar.gz> (or
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
240 a higher version number -- using version 1.x is not
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
241 recommended).
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
242
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
243 A GPL-free version was posted to comp.sources.misc in volume
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
244 31 and is widely available from FTP archive sites, e.g.
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
245 <URL:ftp://gatekeeper.dec.com/.b/usenet/comp.sources.misc/
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
246 volume31/editline/part01.Z>
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
247
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
248 Pass the Python configure script the option
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
249 --with-readline=DIRECTORY where DIRECTORY is the absolute
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
250 pathname of the directory where you've built the readline
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
251 library. Some hints on building and using the readline
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
252 library are in the FAQ (file Misc/FAQ).
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
253
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
254 --with-thread: On SGI IRIX, and on Sun SOLARIS 2, you can use multiple
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
255 threads. To enable this, pass --with-thread. In the
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
256 Modules/Setup file, enable the thread module. (Threads aren't
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
257 enabled automatically because there are run-time penalties
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
258 when support for them is compiled in even if you don't use
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
259 them.)
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
260
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
261 --with-sgi-dl: On SGI IRIX 4, dynamic loading of extension modules is
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
262 supported by the "dl" library by Jack Jansen, which is
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
263 ftp'able from <URL:ftp://ftp.cwi.nl/pub/dynload/dl-1.6.tar.Z>.
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
264 This is enabled (after you've ftp'ed and compiled the dl
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
265 library!) by passing --with-sgi-dl=DIRECTORY where DIRECTORY
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
266 is the absolute pathname of the dl library. (Don't bother on
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
267 IRIX 5, it already has dynamic linking using SunOS style
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
268 shared libraries.) Support for this feature is deprecated.
2049
07cf3b3baf16 The usual changes when a release is nearing...
Guido van Rossum <guido@python.org>
parents: 2015
diff changeset
269
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
270 --with-dl-dld: Dynamic loading of modules is rumoured to be supported
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
271 on some other systems: VAX (Ultrix), Sun3 (SunOS 3.4), Sequent
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
272 Symmetry (Dynix), and Atari ST. This is done using a
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
273 combination of the GNU dynamic loading package
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
274 (<URL:ftp://ftp.cwi.nl/pub/dynload/dl-dld-1.1.tar.Z>) and an
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
275 emulation of the SGI dl library mentioned above (the emulation
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
276 can be found at
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
277 <URL:ftp://ftp.cwi.nl/pub/dynload/dld-3.2.3.tar.Z>). To
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
278 enable this, ftp and compile both libraries, then call the
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
279 configure passing it the option
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
280 --with-dl-dld=DL_DIRECTORY,DLD_DIRECTORY where DL_DIRECTORY is
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
281 the absolute pathname of the dl emulation library and
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
282 DLD_DIRECTORY is the absolute pathname of the GNU dld library.
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
283 (Don't bother on SunOS 4 or 5, they already have dynamic
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
284 linking using shared libraries.) Support for this feature is
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
285 deprecated.
2049
07cf3b3baf16 The usual changes when a release is nearing...
Guido van Rossum <guido@python.org>
parents: 2015
diff changeset
286
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
287 --with-libm, --with-libc: It is possible to specify alternative
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
288 versions for the Math library (default -lm) and the C library
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
289 (default the empty string) using the options
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
290 --with-libm=STRING and --with-libc=STRING, respectively. E.g.
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
291 if your system requires that you pass -lc_s to the C compiler
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
292 to use the shared C library, you can pass --with-libc=-lc_s.
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
293 These libraries are passed after all other libraries, the C
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
294 library last.
2049
07cf3b3baf16 The usual changes when a release is nearing...
Guido van Rossum <guido@python.org>
parents: 2015
diff changeset
295
07cf3b3baf16 The usual changes when a release is nearing...
Guido van Rossum <guido@python.org>
parents: 2015
diff changeset
296
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
297 Extensions
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
298 ----------
1453
d773a5f89426 New files
Guido van Rossum <guido@python.org>
parents:
diff changeset
299
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
300 You can also build an "extended" interpreter, using modules that are
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
301 not contained in the Modules directory. Extensions are distributed as
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
302 a separate tar file (currently extensions.tar.gz). See the README
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
303 file there.
2057
79c171f581fc README: changed URL format to <URL:...>; added section on Tk.
Guido van Rossum <guido@python.org>
parents: 2049
diff changeset
304
79c171f581fc README: changed URL format to <URL:...>; added section on Tk.
Guido van Rossum <guido@python.org>
parents: 2049
diff changeset
305
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
306 Building for multiple architectures (using the VPATH feature)
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
307 -------------------------------------------------------------
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
308
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
309 If your file system is shared between multiple architectures, it
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
310 usually is not necessary to make copies of the sources for each
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
311 architecture you want to support. If the make program supports the
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
312 VPATH feature, you can create an empty build directory for each
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
313 architecture, and in each directory run the configure script (on the
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
314 appropriate machine with the appropriate options). This creates the
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
315 necessary subdirectories and the Makefiles therein. The Makefiles
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
316 contain a line VPATH=... which points to directory containing the
1973
f22cb5fee9c8 remove old readline note, add smake note
Guido van Rossum <guido@python.org>
parents: 1944
diff changeset
317 actual sources. (On SGI systems, use "smake" instead of "make" if you
f22cb5fee9c8 remove old readline note, add smake note
Guido van Rossum <guido@python.org>
parents: 1944
diff changeset
318 use VPATH -- don't try gnumake.)
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
319
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
320 For example, the following is all you need to build a minimal Python
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
321 in /usr/tmp/python (assuming ~guido/src/python is the toplevel
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
322 directory and you want to build in /usr/tmp/python):
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
323
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
324 $ mkdir /usr/tmp/python
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
325 $ cd /usr/tmp/python
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
326 $ ~guido/src/python/configure
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
327 [...]
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
328 $ make
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
329 [...]
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
330 $
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
331
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
332 Note that Modules/Makefile copies the original Setup file to the build
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
333 directory if it finds no Setup file there. This means that you can
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
334 edit the Setup file for each architecture independently. For this
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
335 reason, subsequent changes to the original Setup file are not tracked
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
336 automatically, as they might overwrite local changes. To force a copy
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
337 of a changed original Setup file, delete the target Setup file. (The
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
338 makesetup script supports multiple input files, so if you want to be
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
339 fancy you can change the rules to create an empty Setup.local if it
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
340 doesn't exist and run it with arguments $(srcdir)/Setup Setup.local;
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
341 however this assumes that you only need to add modules.)
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
342
1453
d773a5f89426 New files
Guido van Rossum <guido@python.org>
parents:
diff changeset
343
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
344 Building on non-UNIX systems
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
345 ----------------------------
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
346
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
347 On non-UNIX systems, you will have to fake the effect of running the
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
348 configure script manually. A good start is to copy the file
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
349 config.h.in to config.h and edit the latter to reflect the actual
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
350 configuration of your system. Most symbols must simply be defined as
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
351 1 only if the corresponding feature is present and can be left alone
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
352 otherwise; however RETSIGTYPE must always be defined, either as int or
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
353 as void, and the *_t type symbols must be defined as some variant of
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
354 int if they need to be defined at all. Then arrange that the symbol
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
355 HAVE_CONFIG_H is defined during compilation (usually by passing an
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
356 argument of the form `-DHAVE_CONFIG_H' to the compiler, but this is
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
357 necessarily system-dependent).
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
358
1819
a26b31e159be The usual...
Guido van Rossum <guido@python.org>
parents: 1772
diff changeset
359 I have tried to collect instructions, Makefiles and additional sources
a26b31e159be The usual...
Guido van Rossum <guido@python.org>
parents: 1772
diff changeset
360 for various platforms in this release. The following directories
a26b31e159be The usual...
Guido van Rossum <guido@python.org>
parents: 1772
diff changeset
361 exist:
a26b31e159be The usual...
Guido van Rossum <guido@python.org>
parents: 1772
diff changeset
362
a26b31e159be The usual...
Guido van Rossum <guido@python.org>
parents: 1772
diff changeset
363 Mac/ Apple Macintosh, using THINK C 6.0 or MPW 3.2.
a26b31e159be The usual...
Guido van Rossum <guido@python.org>
parents: 1772
diff changeset
364 Dos/ MS-DOS and Windows 3.1, using Microsoft C.
a26b31e159be The usual...
Guido van Rossum <guido@python.org>
parents: 1772
diff changeset
365 Nt/ Windows NT, using Microsoft Visual C/C++.
a26b31e159be The usual...
Guido van Rossum <guido@python.org>
parents: 1772
diff changeset
366 Os2/ OS/2.
a26b31e159be The usual...
Guido van Rossum <guido@python.org>
parents: 1772
diff changeset
367
a26b31e159be The usual...
Guido van Rossum <guido@python.org>
parents: 1772
diff changeset
368 Most of these instructions were last tested with a previous Python
a26b31e159be The usual...
Guido van Rossum <guido@python.org>
parents: 1772
diff changeset
369 release, so you may still experience occasional problems. If you have
a26b31e159be The usual...
Guido van Rossum <guido@python.org>
parents: 1772
diff changeset
370 fixes or suggestions, please let me know and I'll try to incorporate
a26b31e159be The usual...
Guido van Rossum <guido@python.org>
parents: 1772
diff changeset
371 them in the next release.
a26b31e159be The usual...
Guido van Rossum <guido@python.org>
parents: 1772
diff changeset
372
1453
d773a5f89426 New files
Guido van Rossum <guido@python.org>
parents:
diff changeset
373
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
374
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
375 Miscellaneous issues
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
376 ====================
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
377
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
378
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
379 Documentation
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
380 -------------
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
381
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
382 All documentation is provided in the subdirectory Doc in the form of
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
383 LaTeX files. In order of importance for new users: Tutorial (tut),
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
384 Library Reference (lib), Language Reference (ref), Extending (ext).
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
385 Especially the Library Reference is of immense value since much of
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
386 Python's power (including the built-in data types and functions!) is
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
387 described here.
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
388
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
389 To print the documentation from the LaTeX files, chdir into the Doc
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
390 subdirectory, type "make" (let's hope you have LaTeX installed!), and
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
391 send the four resulting PostScript files (tut.ps, lib.ps, ref.ps, and
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
392 ext.ps) to the printer. See the README file there.
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
393
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
394 All documentation is also available on-line via the World-Wide Web
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
395 (WWW): <URL:http://www.cwi.nl/~guido/Python.html>. It can also be
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
396 downloaded separately from the ftp archives (see below) in Emacs INFO,
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
397 HTML or PostScript form -- see the FAQ (file Misc/FAQ) for more info.
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
398
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
399
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
400 Emacs mode
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
401 ----------
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
402
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
403 There's an excellent Emacs editing mode for Python code; see the file
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
404 Misc/python-mode.el. Originally written by Tim Peters, who's no
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
405 longer on the net, it is now maintained by Barry Warsaw
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
406 <bwarsaw@cnri.reston.va.com>.
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
407
2730
10e105e4cf9c add note about font-lock and fix doc URL
Guido van Rossum <guido@python.org>
parents: 2658
diff changeset
408 BTW, if you want to use font-lock for Python sources, here's something
10e105e4cf9c add note about font-lock and fix doc URL
Guido van Rossum <guido@python.org>
parents: 2658
diff changeset
409 to put in your .emacs file:
10e105e4cf9c add note about font-lock and fix doc URL
Guido van Rossum <guido@python.org>
parents: 2658
diff changeset
410
10e105e4cf9c add note about font-lock and fix doc URL
Guido van Rossum <guido@python.org>
parents: 2658
diff changeset
411 (defun my-python-mode-hook ()
10e105e4cf9c add note about font-lock and fix doc URL
Guido van Rossum <guido@python.org>
parents: 2658
diff changeset
412 (setq font-lock-keywords python-font-lock-keywords)
10e105e4cf9c add note about font-lock and fix doc URL
Guido van Rossum <guido@python.org>
parents: 2658
diff changeset
413 (font-lock-mode 1))
10e105e4cf9c add note about font-lock and fix doc URL
Guido van Rossum <guido@python.org>
parents: 2658
diff changeset
414 (add-hook 'python-mode-hook 'my-python-mode-hook)
10e105e4cf9c add note about font-lock and fix doc URL
Guido van Rossum <guido@python.org>
parents: 2658
diff changeset
415
10e105e4cf9c add note about font-lock and fix doc URL
Guido van Rossum <guido@python.org>
parents: 2658
diff changeset
416
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
417
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
418 Bug reports
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
419 -----------
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
420
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
421 Bugs are best reported to the comp.lang.python newsgroup or the Python
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
422 mailing list -- see the section "Newsgroup and mailing list" below.
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
423 Before posting, read the FAQ (file Misc/FAQ) first to see if your
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
424 problem has already been answered!
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
425
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
426
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
427 Ftp access
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
428 ----------
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
429
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
430 Python's "home ftp site" is ftp.cwi.nl, directory pub/python. See the
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
431 FAQ (file Misc/FAQ) for a list of other ftp sites carrying the Python
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
432 distribution.
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
433
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
434
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
435 Newsgroup and mailing list
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
436 --------------------------
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
437
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
438 There are a newsgroup and a mailing list devoted to Python
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
439 programming, design and bugs. The newsgroup, comp.lang.python,
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
440 contains exactly the same messages as the mailing list. To subscribe
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
441 to the mailing list, send mail containing your real name and e-mail
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
442 address to "python-list-request@cwi.nl" (a real person reads these
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
443 messages, so no LISTPROC or Majordomo commands, please).
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
444
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
445
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
446 The Tk interface
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
447 ----------------
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
448
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
449 Tk (the user interface component of John Ousterhout's Tcl language) is
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
450 also usable from Python. Since this requires that you first build and
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
451 install Tcl/Tk, the Tk interface is not enabled by default. It
3008
a51022f1980f 1.3b1 notes
Guido van Rossum <guido@python.org>
parents: 2730
diff changeset
452 requires Tcl 7.4 and Tk 4.0. (Support for Tk 3.6 and Tcl 7.3 can be
a51022f1980f 1.3b1 notes
Guido van Rossum <guido@python.org>
parents: 2730
diff changeset
453 found in Lib/tk3inter/.)
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
454
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
455 To enable the Python/Tk interface, once you've built and installed
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
456 Tcl/Tk, all you need to do is edit two lines in Modules/Setup; search
3233
fd573ac75947 Renamed module tkinter to _tkinter
Jack Jansen <jack.jansen@cwi.nl>
parents: 3174
diff changeset
457 for the string "_tkinter". Un-comment one (normally the first) of the
fd573ac75947 Renamed module tkinter to _tkinter
Jack Jansen <jack.jansen@cwi.nl>
parents: 3174
diff changeset
458 lines beginning with "#_tkinter" and un-comment the line beginning with
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
459 "#TKPATH". (If you have installed Tcl/Tk in unusual places you will
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
460 have to edit the first line as well to fix the -I and -L options.)
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
461 See the Build Instructions above for more details.
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
462
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
463 There is little documentation. Begin with fetching the "Tk Lifesaver"
2730
10e105e4cf9c add note about font-lock and fix doc URL
Guido van Rossum <guido@python.org>
parents: 2658
diff changeset
464 document, e.g. <URL:ftp://ftp.cwi.nl/pub/python/doc/tkinter-doc.tar.gz>
10e105e4cf9c add note about font-lock and fix doc URL
Guido van Rossum <guido@python.org>
parents: 2658
diff changeset
465 (a gzipped tar file containing a PostScript file). There are demos in
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
466 the Demo/tkinter directory, in the subdirectories guido, matt and www.
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
467
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
468 Note that there's a Python module called "Tkinter" (capital T) which
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
469 lives in Lib/tkinter/Tkinter.py, and a C module called "tkinter"
3233
fd573ac75947 Renamed module tkinter to _tkinter
Jack Jansen <jack.jansen@cwi.nl>
parents: 3174
diff changeset
470 (lower case t) which lives in Modules/_tkinter.c. Demos and
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
471 normal Tk applications only import the Python Tkinter module -- only
3233
fd573ac75947 Renamed module tkinter to _tkinter
Jack Jansen <jack.jansen@cwi.nl>
parents: 3174
diff changeset
472 the latter uses the C _tkinter module directly. In order to find the C
fd573ac75947 Renamed module tkinter to _tkinter
Jack Jansen <jack.jansen@cwi.nl>
parents: 3174
diff changeset
473 _tkinter module, it must be compiled and linked into the Python
fd573ac75947 Renamed module tkinter to _tkinter
Jack Jansen <jack.jansen@cwi.nl>
parents: 3174
diff changeset
474 interpreter -- the _tkinter line in the Setup file does this. In order
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
475 to find the Python Tkinter module, sys.path must be set correctly --
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
476 the TKPATH assignment in the Setup file takes care of this, but only
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
477 if you install Python properly ("make install libinstall"). (You can
3233
fd573ac75947 Renamed module tkinter to _tkinter
Jack Jansen <jack.jansen@cwi.nl>
parents: 3174
diff changeset
478 also use dynamic loading for the C _tkinter module, in which case you
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
479 must manually fix up sys.path or set $PYTHONPATH for the Python
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
480 Tkinter module.)
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
481
3174
f7789945b8de release 1.3 for real
Guido van Rossum <guido@python.org>
parents: 3110
diff changeset
482 See <URL:http://www.smli.com/research/tcl/> for more info on where
3008
a51022f1980f 1.3b1 notes
Guido van Rossum <guido@python.org>
parents: 2730
diff changeset
483 to get Tcl/Tk.
a51022f1980f 1.3b1 notes
Guido van Rossum <guido@python.org>
parents: 2730
diff changeset
484
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
485
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
486 Distribution structure
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
487 ----------------------
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
488
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
489 Most subdirectories have their own README file. Most files have
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
490 comments.
1453
d773a5f89426 New files
Guido van Rossum <guido@python.org>
parents:
diff changeset
491
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
492 ChangeLog A raw list of changes since the first 1.0.0 BETA release
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
493 Contrib/ Interesting or useful Python code contributed by others
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
494 Demo/ Demonstration scripts, modules and programs
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
495 Doc/ Documentation (LaTeX sources)
1819
a26b31e159be The usual...
Guido van Rossum <guido@python.org>
parents: 1772
diff changeset
496 Extensions/ Extension modules (distributed separately)
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
497 Grammar/ Input for the parser generator
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
498 Include/ Public header files
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
499 Lib/ Python library modules
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
500 Makefile.in Source from which config.status creates Makefile
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
501 Misc/ Miscellaneous files
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
502 Modules/ Implementation of most built-in modules
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
503 Objects/ Implementation of most built-in object types
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
504 Parser/ The parser and tokenizer and their input handling
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
505 Python/ The "compiler" and interpreter
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
506 README The file you're reading now
2510
c29adb338964 add warning about recompiling myreadline.o; add Tools/
Guido van Rossum <guido@python.org>
parents: 2329
diff changeset
507 Tools/ Some useful programs written in Python
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
508 acconfig.h Additional input for the autoheader program
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
509 config.h.in Source from which config.status creates config.h
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
510 configure Configuration shell script (GNU autoconf output)
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
511 configure.in Configuration specification (GNU autoconf input)
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
512
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
513 The following files will (may) be created in the toplevel directory by
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
514 the configuration and build processes:
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
515
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
516 Makefile Build rules
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
517 config.cache cache of configuration variables
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
518 config.h Configuration header
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
519 config.log log from last configure run
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
520 config.status status from last run of configure script
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
521 python The executable interpreter
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
522 tags, TAGS Tags files for vi and Emacs
1453
d773a5f89426 New files
Guido van Rossum <guido@python.org>
parents:
diff changeset
523
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
524
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
525 Author's address
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
526 ----------------
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
527
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
528 Guido van Rossum
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
529 CWI, dept. CST
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
530 P.O. Box 94079
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
531 1090 GB Amsterdam
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
532 The Netherlands
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
533
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
534 E-mail: guido@cwi.nl
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
535
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
536
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
537
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
538 Copyright notice
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
539 ================
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
540
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
541 The Python source is copyrighted, but you can freely use and copy it
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
542 as long as you don't change or remove the copyright notice:
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
543
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
544 ----------------------------------------------------------------------
2057
79c171f581fc README: changed URL format to <URL:...>; added section on Tk.
Guido van Rossum <guido@python.org>
parents: 2049
diff changeset
545 Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam,
79c171f581fc README: changed URL format to <URL:...>; added section on Tk.
Guido van Rossum <guido@python.org>
parents: 2049
diff changeset
546 The Netherlands.
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
547
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
548 All Rights Reserved
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
549
1819
a26b31e159be The usual...
Guido van Rossum <guido@python.org>
parents: 1772
diff changeset
550 Permission to use, copy, modify, and distribute this software and its
a26b31e159be The usual...
Guido van Rossum <guido@python.org>
parents: 1772
diff changeset
551 documentation for any purpose and without fee is hereby granted,
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
552 provided that the above copyright notice appear in all copies and that
1819
a26b31e159be The usual...
Guido van Rossum <guido@python.org>
parents: 1772
diff changeset
553 both that copyright notice and this permission notice appear in
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
554 supporting documentation, and that the names of Stichting Mathematisch
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
555 Centrum or CWI not be used in advertising or publicity pertaining to
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
556 distribution of the software without specific, written prior permission.
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
557
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
558 STICHTING MATHEMATISCH CENTRUM DISCLAIMS ALL WARRANTIES WITH REGARD TO
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
559 THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
560 FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH CENTRUM BE LIABLE
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
561 FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
562 WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
563 ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
564 OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
565 ----------------------------------------------------------------------
1748
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
566
8286a662502b Merge alpha100 branch back to main trunk
Guido van Rossum <guido@python.org>
parents: 1456
diff changeset
567
2658
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
568 --Guido van Rossum, CWI, Amsterdam <mailto:guido@cwi.nl>
3a3df231327c revamped README; the usual elsewhere...
Guido van Rossum <guido@python.org>
parents: 2510
diff changeset
569 <http://www.cwi.nl/~guido/>