blob: 80b78cb0db2c4e1ecd8b62702014758711a7d9d9 [file] [log] [blame]
Guido van Rossumfaf681a1996-06-20 14:32:08 +00001This is Python release 1.4 beta 1
2=================================
3
4It's a beta release. Only use this if you want to help me iron the
5last wrinkles out of the distribution before I release the real 1.4
6release. In particular, I'm interested in porting experiences to Unix
7boxes. It should build out of the box using "./configure; make".
8Also try running configue with the --with-thread and --with-readline
9options (described below).
Guido van Rossum627b2d71993-12-24 10:39:16 +000010
Guido van Rossum627b2d71993-12-24 10:39:16 +000011
Guido van Rossum91cb9d21995-04-10 11:47:38 +000012What's new in this release?
13---------------------------
Guido van Rossum627b2d71993-12-24 10:39:16 +000014
Guido van Rossumfaf681a1996-06-20 14:32:08 +000015XXX
Guido van Rossum627b2d71993-12-24 10:39:16 +000016
Guido van Rossum627b2d71993-12-24 10:39:16 +000017
Guido van Rossum91cb9d21995-04-10 11:47:38 +000018What is Python anyway?
19----------------------
20
21Python is an interpreted object-oriented programming language, and is
22often compared to Tcl, Perl or Scheme. For a quick summary of what
Guido van Rossumfaf681a1996-06-20 14:32:08 +000023Python can mean for a UNIX/C programmer, read Misc/BLURB.LUTZ. If you
24have web access, point your browser to <URL:http://www.python.org>.
Guido van Rossum91cb9d21995-04-10 11:47:38 +000025
26
27If you don't read instructions
28------------------------------
29
30Congratulations on getting this far. :-)
31
32To start building right away (on UNIX): type "./configure" in the
33current directory and when it finishes, type "make". The section
34Build Instructions below is still recommended reading. :-)
35
36
37Copyright issues
38----------------
39
40Python is COPYRIGHTED but free to use for all. See the full copyright
41notice at the end of this file.
42
43The Python distribution is *not* affected by the GNU Public Licence
44(GPL). There are interfaces to some GNU code but these are entirely
45optional and no GNU code is distributed with Python. For all these
46packages, GPL-free public domain versions also exist.
47
Guido van Rossum627b2d71993-12-24 10:39:16 +000048
Guido van Rossumff840491995-09-18 22:02:47 +000049A modest plug
50=============
51
52
Guido van Rossum0447a321995-10-08 01:22:33 +000053*************************************************************************
54* *
55* Python exists, and is free, thanks to the contributed efforts *
56* of many people. The PSA was created to maximize the results *
57* of those efforts, by helping to coordinate them. The PSA *
58* operates web, ftp and email servers, organizes Python *
59* workshops, and engages in other activities that benefit the *
60* Python user community. The PSA is seeking support for these *
61* activities. See this URL for information on how to join: *
62* http://www.python.org/psa/Joining.html *
63* *
64*************************************************************************
Guido van Rossumff840491995-09-18 22:02:47 +000065
Guido van Rossum627b2d71993-12-24 10:39:16 +000066
Guido van Rossum433c8ad1994-08-01 12:07:07 +000067Build instructions
Guido van Rossum91cb9d21995-04-10 11:47:38 +000068==================
Guido van Rossum627b2d71993-12-24 10:39:16 +000069
Guido van Rossum433c8ad1994-08-01 12:07:07 +000070Before you start building Python, you must first configure it. This
71entails (at least) running the script "./configure", which figures out
Guido van Rossum91cb9d21995-04-10 11:47:38 +000072your system configuration and creates several Makefiles. (It takes a
73minute or two -- please be patient!) When it's done, you are ready to
74run make. Typing "make" in the toplevel directory will recursively
75run make in each of the subdirectories Parser, Objects, Python and
76Modules, creating a library file in each one. The executable of the
77interpreter is built in the Modules subdirectory and moved up here
78when it is built. If you want or need to, you can also chdir into
79each subdirectory in turn and run make there manually (do the Modules
80subdirectory last!).
Guido van Rossum627b2d71993-12-24 10:39:16 +000081
Guido van Rossum91cb9d21995-04-10 11:47:38 +000082NOTE: if you rerun the configure script with different options, remove
83all object files by running "make clean" before rebuilding. Believe
84it or not, "make clean" sometimes helps to clean up other inexplicable
85problems as well. Try it before sending in a bug report!
Guido van Rossum627b2d71993-12-24 10:39:16 +000086
Guido van Rossum0a516c91994-09-12 10:58:40 +000087
Guido van Rossum91cb9d21995-04-10 11:47:38 +000088Troubleshooting
89---------------
Guido van Rossum627b2d71993-12-24 10:39:16 +000090
Guido van Rossumfaf681a1996-06-20 14:32:08 +000091If recursive makes fail, try invoking make as "make MAKE=make".
92
93If you run into other trouble, see section 3 of the FAQ (file
94Misc/FAQ) for hints on what can go wrong, and how to fix it.
Guido van Rossum91cb9d21995-04-10 11:47:38 +000095
96
97Platform specific notes
98-----------------------
99
Guido van Rossum0447a321995-10-08 01:22:33 +0000100(Some of these may no longer apply. If you find you can build Python
101on these platforms without the special directions mentioned here, let
102me know so I can remove them!)
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000103
Guido van Rossum8eca2c21996-02-14 18:37:46 +0000104Linux: Once you've built Python, use it to run the regen.py script in
105 the Lib/linux1 directory. Apparently the files as distributed
106 don't match the system headers on some Linux versions.
107
Guido van Rossumfaf681a1996-06-20 14:32:08 +0000108AIX: Read the files Misc/AIX-NOTES* before trying to build.
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000109
110HP-UX: Read the file Misc/HPUX-NOTES if you want to be able to
111 use shared libraries for dynamically loaded modules.
112
113Minix: When using ack, use "CC=cc AR=aal RANLIB=: ./configure"!
114
115SCO: 1) Everything works much better if you add -U__STDC__ to the
116 defs. This is because all the SCO header files are broken.
117 Anything that isn't mentioned in the C standard it's
118 conditionally excluded when __STDC__ is defined.
119
120 2) Due to the U.S. export restrictions, SCO broke the crypt
121 stuff out into a separate library, libcrypt_i.a so the LIBS
122 needed be set to:
123
124 LIBS=' -lsocket -lcrypt_i'
125
126
127Configuring the set of built-in modules
128---------------------------------------
Guido van Rossum19e0c261995-01-17 16:36:34 +0000129
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000130You can configure the interpreter to contain fewer or more built-in
131modules by editing the file Modules/Setup. This file is initially
132copied (when the toplevel Makefile makes Modules/Makefile for the
133first time) from Setup.in; if it does not exist yet, make a copy
134yourself. Never edit Setup.in -- always edit Setup. Read the
135comments in the file for information on what kind of edits you can
136make. When you have edited Setup, Makefile and config.c in Modules
137will automatically be rebuilt the next time you run make in the
Guido van Rossum9444ce01994-10-20 22:10:23 +0000138toplevel directory.
Guido van Rossum627b2d71993-12-24 10:39:16 +0000139
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000140Especially on SGI IRIX, there are modules that interface to many SGI
141specific system libraries, e.g. the GL library and the audio hardware.
142
143
144Setting the optimization/debugging options
145------------------------------------------
146
147If you want to change the optimization/debugging options for the C
148compiler, assign to the OPT variable on the toplevel make command;
149e.g. "make OPT=-g" will build a debugging version of Python on most
150platforms. The default is OPT=-O; a value for OPT in the environment
151when the configure script is run overrides this default (likewise for
152CC; and the initial value for LIBS is used as the base set of
153libraries to link with).
154
155
156Testing
157-------
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000158
159To test the interpreter that you have just built, type "make test".
160This runs the test set silently, twice (once with no compiled files,
161once with the compiled files left by the previous test run). Each
162test run should print "All tests OK." and nothing more. (The test set
163does not test the built-in modules, but will find most other problems
164with the interpreter.)
165
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000166IMPORTANT: If the tests fail and you decide to mail a bug report,
167*don't* include the output of "make test". It is useless. Run the
168following command instead:
169
170 PYTHONPATH=../Lib:../Lib/test:./Modules ./python -c 'import testall'
171
172(substituting the top of the source tree for .. if you built in a
173different directory). This gives the output of the tests and shows
174which test failed.
175
176
177Installing
178----------
179
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000180To install the interpreter as /usr/local/bin/python, type "make
181install". To install the library as /usr/local/lib/python, type "make
182libinstall". To install the manual page as
183/usr/local/man/man1/python.1, type "make maninstall". To install the
Guido van Rossumfaf681a1996-06-20 14:32:08 +0000184Emacs editing mode for Python, manually copy the file
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000185Misc/python-mode.el to your local Emacs lisp directory. The directory
186/usr/local can be overridden at configuration time by passing
187--prefix=DIRECTORY to the configure script, or at make time by passing
188"prefix=DIRECTORY" to make. See below for more information on --prefix.
189
190If you plan to do development of extension modules or to embed Python
191in another application and don't want to reference the original source
192tree, you can type "make inclinstall" and "make libainstall" to
193install the include files and lib*.a files, respectively, as
194/usr/local/include/Py/*.h and /usr/local/lib/python/lib/lib*.a. The
195make libainstall target also installs copies of several other files
196used or produced during the build process which are needed to build
197extensions or to generate their Makefiles.
198
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000199
200Configuration options and variables
201-----------------------------------
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000202
203Some special cases are handled by passing environment variables or
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000204options to the configure script.
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000205
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000206NOTE: if you rerun the configure script with different options, remove
207all object files by running "make clean" before rebuilding.
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000208
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000209--with(out)-gcc: The configure script uses gcc (the GNU C compiler) if
210 it finds it. If you don't want this, or if this compiler is
211 installed but broken on your platform, pass the option
212 --without-gcc. You can also pass "CC=cc" (or whatever the
213 name of the proper C compiler is) in the environment, but the
214 advantage of using --without-gcc is that this option is
215 remembered by the config.status script for its --recheck
216 option.
Guido van Rossum76be6ed1995-01-02 18:33:54 +0000217
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000218--prefix, --exec-prefix: If you want to install the binaries and the
219 Python library somewhere else than in /usr/local/{bin,lib},
220 you can pass the option --prefix=DIRECTORY; the interpreter
221 binary will be installed as DIRECTORY/bin/python and the
222 library files as DIRECTORY/lib/python/*. If you pass
223 --exec-prefix=DIRECTORY (as well) this overrides the
224 installation prefix for architecture-dependent files (like the
225 interpreter binary). Note that --prefix=DIRECTORY also
226 affects the default module search path (sys.path), when
227 Modules/config.c is compiled. Passing make the option
228 prefix=DIRECTORY (and/or exec_prefix=DIRECTORY) overrides the
229 prefix set at configuration time; this may be more convenient
230 than re-running the configure script if you change your mind
231 about the install prefix...
Guido van Rossum76be6ed1995-01-02 18:33:54 +0000232
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000233--with-readline: You can use the GNU readline library to improve the
Guido van Rossumfaf681a1996-06-20 14:32:08 +0000234 interactive user interface. This gives you line editing and
235 command history when calling Python interactively. Unless GNU
236 readline is a standard part of your system (it is on Linux),
237 you need to configure build the GNU readline library before
238 running the configure script. Its sources are not distributed
239 with Python; you can ftp them from any GNU mirror site, or
240 from its home site:
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000241 <URL:ftp://slc2.ins.cwru.edu/pub/dist/readline-2.0.tar.gz> (or
242 a higher version number -- using version 1.x is not
243 recommended).
Guido van Rossum76be6ed1995-01-02 18:33:54 +0000244
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000245 A GPL-free version was posted to comp.sources.misc in volume
246 31 and is widely available from FTP archive sites, e.g.
247 <URL:ftp://gatekeeper.dec.com/.b/usenet/comp.sources.misc/
248 volume31/editline/part01.Z>
249
250 Pass the Python configure script the option
251 --with-readline=DIRECTORY where DIRECTORY is the absolute
252 pathname of the directory where you've built the readline
Guido van Rossumfaf681a1996-06-20 14:32:08 +0000253 library. If GNU readline is a standard part of your system,
254 don't pass '=DIRECTORY'. Some hints on building and using the
255 readline library are in the FAQ (file Misc/FAQ).
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000256
Guido van Rossumfaf681a1996-06-20 14:32:08 +0000257--with-thread: On most Unix systems, you can now use multiple threads.
258 To enable this, pass --with-thread. If the library required
259 for threads lives in a peculiar place, you can use
260 --with-thread=DIRECTORY. In the Modules/Setup file, enable
261 the thread module. (Threads aren't enabled automatically
262 because there are run-time penalties when support for them is
263 compiled in even if you don't use them.)
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000264
265--with-sgi-dl: On SGI IRIX 4, dynamic loading of extension modules is
266 supported by the "dl" library by Jack Jansen, which is
267 ftp'able from <URL:ftp://ftp.cwi.nl/pub/dynload/dl-1.6.tar.Z>.
268 This is enabled (after you've ftp'ed and compiled the dl
269 library!) by passing --with-sgi-dl=DIRECTORY where DIRECTORY
270 is the absolute pathname of the dl library. (Don't bother on
271 IRIX 5, it already has dynamic linking using SunOS style
272 shared libraries.) Support for this feature is deprecated.
273
274--with-dl-dld: Dynamic loading of modules is rumoured to be supported
275 on some other systems: VAX (Ultrix), Sun3 (SunOS 3.4), Sequent
276 Symmetry (Dynix), and Atari ST. This is done using a
277 combination of the GNU dynamic loading package
278 (<URL:ftp://ftp.cwi.nl/pub/dynload/dl-dld-1.1.tar.Z>) and an
279 emulation of the SGI dl library mentioned above (the emulation
280 can be found at
281 <URL:ftp://ftp.cwi.nl/pub/dynload/dld-3.2.3.tar.Z>). To
282 enable this, ftp and compile both libraries, then call the
283 configure passing it the option
284 --with-dl-dld=DL_DIRECTORY,DLD_DIRECTORY where DL_DIRECTORY is
285 the absolute pathname of the dl emulation library and
286 DLD_DIRECTORY is the absolute pathname of the GNU dld library.
287 (Don't bother on SunOS 4 or 5, they already have dynamic
288 linking using shared libraries.) Support for this feature is
289 deprecated.
290
291--with-libm, --with-libc: It is possible to specify alternative
292 versions for the Math library (default -lm) and the C library
293 (default the empty string) using the options
294 --with-libm=STRING and --with-libc=STRING, respectively. E.g.
295 if your system requires that you pass -lc_s to the C compiler
296 to use the shared C library, you can pass --with-libc=-lc_s.
297 These libraries are passed after all other libraries, the C
298 library last.
Guido van Rossum76be6ed1995-01-02 18:33:54 +0000299
300
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000301Extensions
302----------
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000303
304You can also build an "extended" interpreter, using modules that are
305not contained in the Modules directory. Extensions are distributed as
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000306a separate tar file (currently extensions.tar.gz). See the README
307file there.
Guido van Rossumaf5b83e1995-01-04 19:02:35 +0000308
309
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000310Building for multiple architectures (using the VPATH feature)
311-------------------------------------------------------------
312
313If your file system is shared between multiple architectures, it
314usually is not necessary to make copies of the sources for each
315architecture you want to support. If the make program supports the
316VPATH feature, you can create an empty build directory for each
317architecture, and in each directory run the configure script (on the
318appropriate machine with the appropriate options). This creates the
319necessary subdirectories and the Makefiles therein. The Makefiles
320contain a line VPATH=... which points to directory containing the
Guido van Rossum6b111b01994-10-11 15:03:34 +0000321actual sources. (On SGI systems, use "smake" instead of "make" if you
322use VPATH -- don't try gnumake.)
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000323
324For example, the following is all you need to build a minimal Python
325in /usr/tmp/python (assuming ~guido/src/python is the toplevel
326directory and you want to build in /usr/tmp/python):
327
328 $ mkdir /usr/tmp/python
329 $ cd /usr/tmp/python
330 $ ~guido/src/python/configure
331 [...]
332 $ make
333 [...]
334 $
335
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000336Note that Modules/Makefile copies the original Setup file to the build
337directory if it finds no Setup file there. This means that you can
338edit the Setup file for each architecture independently. For this
339reason, subsequent changes to the original Setup file are not tracked
340automatically, as they might overwrite local changes. To force a copy
341of a changed original Setup file, delete the target Setup file. (The
342makesetup script supports multiple input files, so if you want to be
343fancy you can change the rules to create an empty Setup.local if it
344doesn't exist and run it with arguments $(srcdir)/Setup Setup.local;
345however this assumes that you only need to add modules.)
346
347
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000348Building on non-UNIX systems
349----------------------------
350
351On non-UNIX systems, you will have to fake the effect of running the
352configure script manually. A good start is to copy the file
353config.h.in to config.h and edit the latter to reflect the actual
354configuration of your system. Most symbols must simply be defined as
3551 only if the corresponding feature is present and can be left alone
356otherwise; however RETSIGTYPE must always be defined, either as int or
357as void, and the *_t type symbols must be defined as some variant of
358int if they need to be defined at all. Then arrange that the symbol
359HAVE_CONFIG_H is defined during compilation (usually by passing an
360argument of the form `-DHAVE_CONFIG_H' to the compiler, but this is
361necessarily system-dependent).
362
Guido van Rossumc561e5d1994-08-23 13:52:46 +0000363I have tried to collect instructions, Makefiles and additional sources
364for various platforms in this release. The following directories
365exist:
366
367Mac/ Apple Macintosh, using THINK C 6.0 or MPW 3.2.
368Dos/ MS-DOS and Windows 3.1, using Microsoft C.
369Nt/ Windows NT, using Microsoft Visual C/C++.
370Os2/ OS/2.
371
372Most of these instructions were last tested with a previous Python
373release, so you may still experience occasional problems. If you have
374fixes or suggestions, please let me know and I'll try to incorporate
375them in the next release.
376
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000377
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000378
379Miscellaneous issues
380====================
381
382
383Documentation
384-------------
385
386All documentation is provided in the subdirectory Doc in the form of
387LaTeX files. In order of importance for new users: Tutorial (tut),
388Library Reference (lib), Language Reference (ref), Extending (ext).
389Especially the Library Reference is of immense value since much of
390Python's power (including the built-in data types and functions!) is
391described here.
392
393To print the documentation from the LaTeX files, chdir into the Doc
394subdirectory, type "make" (let's hope you have LaTeX installed!), and
395send the four resulting PostScript files (tut.ps, lib.ps, ref.ps, and
396ext.ps) to the printer. See the README file there.
397
398All documentation is also available on-line via the World-Wide Web
Guido van Rossumfaf681a1996-06-20 14:32:08 +0000399(WWW): <URL:http://www.python.org>. It can also be downloaded
400separately from the ftp archives (see below) in Emacs INFO, HTML or
401PostScript form -- see the FAQ (file Misc/FAQ) for more info.
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000402
403
404Emacs mode
405----------
406
407There's an excellent Emacs editing mode for Python code; see the file
408Misc/python-mode.el. Originally written by Tim Peters, who's no
409longer on the net, it is now maintained by Barry Warsaw
410<bwarsaw@cnri.reston.va.com>.
411
Guido van Rossum3c294ca1995-06-14 18:17:22 +0000412BTW, if you want to use font-lock for Python sources, here's something
413to put in your .emacs file:
414
415 (defun my-python-mode-hook ()
416 (setq font-lock-keywords python-font-lock-keywords)
417 (font-lock-mode 1))
418 (add-hook 'python-mode-hook 'my-python-mode-hook)
419
420
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000421
422Bug reports
423-----------
424
425Bugs are best reported to the comp.lang.python newsgroup or the Python
426mailing list -- see the section "Newsgroup and mailing list" below.
427Before posting, read the FAQ (file Misc/FAQ) first to see if your
428problem has already been answered!
429
430
431Ftp access
432----------
433
Guido van Rossumfaf681a1996-06-20 14:32:08 +0000434Python's "home ftp site" is ftp.python.org, directory /pub/python.
435See the FAQ (file Misc/FAQ) for a list of other ftp sites carrying the
436Python distribution.
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000437
438
439Newsgroup and mailing list
440--------------------------
441
442There are a newsgroup and a mailing list devoted to Python
443programming, design and bugs. The newsgroup, comp.lang.python,
444contains exactly the same messages as the mailing list. To subscribe
445to the mailing list, send mail containing your real name and e-mail
446address to "python-list-request@cwi.nl" (a real person reads these
447messages, so no LISTPROC or Majordomo commands, please).
448
449
450The Tk interface
451----------------
452
453Tk (the user interface component of John Ousterhout's Tcl language) is
454also usable from Python. Since this requires that you first build and
455install Tcl/Tk, the Tk interface is not enabled by default. It
Guido van Rossum84c8c7f1995-08-28 02:44:24 +0000456requires Tcl 7.4 and Tk 4.0. (Support for Tk 3.6 and Tcl 7.3 can be
457found in Lib/tk3inter/.)
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000458
459To enable the Python/Tk interface, once you've built and installed
460Tcl/Tk, all you need to do is edit two lines in Modules/Setup; search
Jack Jansen10d0f8f1995-10-23 14:36:05 +0000461for the string "_tkinter". Un-comment one (normally the first) of the
462lines beginning with "#_tkinter" and un-comment the line beginning with
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000463"#TKPATH". (If you have installed Tcl/Tk in unusual places you will
464have to edit the first line as well to fix the -I and -L options.)
465See the Build Instructions above for more details.
466
467There is little documentation. Begin with fetching the "Tk Lifesaver"
Guido van Rossumfaf681a1996-06-20 14:32:08 +0000468document,
469e.g. <URL:ftp://ftp.python.org/pub/python/doc/tkinter-doc.tar.gz> (a
470gzipped tar file containing a PostScript file). There are demos in
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000471the Demo/tkinter directory, in the subdirectories guido, matt and www.
472
473Note that there's a Python module called "Tkinter" (capital T) which
474lives in Lib/tkinter/Tkinter.py, and a C module called "tkinter"
Jack Jansen10d0f8f1995-10-23 14:36:05 +0000475(lower case t) which lives in Modules/_tkinter.c. Demos and
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000476normal Tk applications only import the Python Tkinter module -- only
Jack Jansen10d0f8f1995-10-23 14:36:05 +0000477the latter uses the C _tkinter module directly. In order to find the C
478_tkinter module, it must be compiled and linked into the Python
479interpreter -- the _tkinter line in the Setup file does this. In order
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000480to find the Python Tkinter module, sys.path must be set correctly --
481the TKPATH assignment in the Setup file takes care of this, but only
482if you install Python properly ("make install libinstall"). (You can
Jack Jansen10d0f8f1995-10-23 14:36:05 +0000483also use dynamic loading for the C _tkinter module, in which case you
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000484must manually fix up sys.path or set $PYTHONPATH for the Python
485Tkinter module.)
486
Guido van Rossum0447a321995-10-08 01:22:33 +0000487See <URL:http://www.smli.com/research/tcl/> for more info on where
Guido van Rossum84c8c7f1995-08-28 02:44:24 +0000488to get Tcl/Tk.
489
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000490
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000491Distribution structure
492----------------------
493
494Most subdirectories have their own README file. Most files have
495comments.
496
497ChangeLog A raw list of changes since the first 1.0.0 BETA release
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000498Contrib/ Interesting or useful Python code contributed by others
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000499Demo/ Demonstration scripts, modules and programs
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000500Doc/ Documentation (LaTeX sources)
Guido van Rossumc561e5d1994-08-23 13:52:46 +0000501Extensions/ Extension modules (distributed separately)
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000502Grammar/ Input for the parser generator
503Include/ Public header files
504Lib/ Python library modules
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000505Makefile.in Source from which config.status creates Makefile
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000506Misc/ Miscellaneous files
507Modules/ Implementation of most built-in modules
508Objects/ Implementation of most built-in object types
509Parser/ The parser and tokenizer and their input handling
510Python/ The "compiler" and interpreter
511README The file you're reading now
Guido van Rossume109aa71995-03-09 14:12:10 +0000512Tools/ Some useful programs written in Python
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000513acconfig.h Additional input for the autoheader program
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000514config.h.in Source from which config.status creates config.h
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000515configure Configuration shell script (GNU autoconf output)
516configure.in Configuration specification (GNU autoconf input)
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000517
518The following files will (may) be created in the toplevel directory by
519the configuration and build processes:
520
521Makefile Build rules
522config.cache cache of configuration variables
523config.h Configuration header
524config.log log from last configure run
525config.status status from last run of configure script
526python The executable interpreter
527tags, TAGS Tags files for vi and Emacs
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000528
529
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000530Author's address
531----------------
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000532
533Guido van Rossum
Guido van Rossumfaf681a1996-06-20 14:32:08 +0000534CNRI
5351895 Preston White Drive
536Reston, VA 22094
537USA
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000538
Guido van Rossumfaf681a1996-06-20 14:32:08 +0000539E-mail: guido@python.org
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000540
541
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000542
543Copyright notice
544================
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000545
546The Python source is copyrighted, but you can freely use and copy it
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000547as long as you don't change or remove the copyright notice:
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000548
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000549----------------------------------------------------------------------
Guido van Rossumaf5b83e1995-01-04 19:02:35 +0000550Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam,
551The Netherlands.
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000552
553 All Rights Reserved
554
Guido van Rossumc561e5d1994-08-23 13:52:46 +0000555Permission to use, copy, modify, and distribute this software and its
556documentation for any purpose and without fee is hereby granted,
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000557provided that the above copyright notice appear in all copies and that
Guido van Rossumc561e5d1994-08-23 13:52:46 +0000558both that copyright notice and this permission notice appear in
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000559supporting documentation, and that the names of Stichting Mathematisch
560Centrum or CWI not be used in advertising or publicity pertaining to
561distribution of the software without specific, written prior permission.
562
563STICHTING MATHEMATISCH CENTRUM DISCLAIMS ALL WARRANTIES WITH REGARD TO
564THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
565FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH CENTRUM BE LIABLE
566FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
567WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
568ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
569OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000570----------------------------------------------------------------------
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000571
572
Guido van Rossumfaf681a1996-06-20 14:32:08 +0000573--Guido van Rossum (home page: http://www.python.org/~guido/)