blob: d4c9588b76c53d4d6145f7d6d1121ba6adb71857 [file] [log] [blame]
Jack Jansencbe7b1c2001-03-06 22:42:12 +00001How to install Python 2.1b1 on your Macintosh
Jack Jansen2f9a9e32001-02-17 22:03:42 +00002---------------------------------------------
3
Jack Jansencbe7b1c2001-03-06 22:42:12 +00004This is the first beta for a MacPython that can run on classic MacOS (from 8.1
5onwards) and natively on MacOSX. The installer tries to work out whether you can
6use the Carbon version or not. This is also the first MacPython distribution
7to be packaged as an active installer, which only downloads the parts you actually
8need. Let me hear about problems in these areas.
Jack Jansen2f9a9e32001-02-17 22:03:42 +00009
10You should definitely read the Relnotes file too.
11
12------
Jack Jansen83cab721997-08-26 13:25:06 +000013
14If this is your first encounter with Python: you definitely need the
15common user documentation (common to all platforms). You can find this
Jack Jansen538bd132000-10-19 21:58:27 +000016(in various forms) on www.pythonlabs.com, www.python.org and
17ftp.python.org. Through there, or via
18http://www.cwi.nl/~jack/macpython.html you can also find the most recent
19MacPython distribution.
Jack Jansen83cab721997-08-26 13:25:06 +000020
21Mac-specific documentation is included in this distribution in folder
22Mac:Demo. The documentation is sparse, but it will have to serve for
23now. The documentation is in HTML format, start with index.html.
24
Jack Jansend0ddb661998-04-27 15:14:36 +000025Caveats
26-------
Jack Jansen2f9a9e32001-02-17 22:03:42 +000027Aside from the general new Python 2.1 features compared to 2.0 the main
28feature of this release is Carbon support.
Jack Jansenffd61a62000-04-09 18:37:50 +000029
Jack Jansencbe7b1c2001-03-06 22:42:12 +000030This installer installs MacPython for classic PPC MacOS, MacPython for Carbon
31(OS X, OS 9 or OS8 with CarbonLib installed) or both, depending on your
32configuration. By selecting custom install you can bypass these tests and
33install what you want.
Jack Jansenecbc1cc1998-01-06 12:13:16 +000034
Jack Jansencbe7b1c2001-03-06 22:42:12 +000035If you want 68k support you will have to stay with 1.5.2.
Jack Jansen965226b2000-09-14 20:58:24 +000036
Jack Jansen83cab721997-08-26 13:25:06 +000037What to install
38---------------
39
Jack Jansen12a37b72000-05-06 23:01:07 +000040The optional parts in this distribution are
41- TK+PIL: Tkinter and support modules, plus Imaging, the Python image manipulation
42 package (allows you to read, write and display images and do lots of operations on them).
Jack Jansencbe7b1c2001-03-06 22:42:12 +000043 For Carbon MacPython you only get PIL: there is no Tcl/Tk for Carbon yet.
Jack Jansen12a37b72000-05-06 23:01:07 +000044- img: another imaging package. Has more file format support and is faster
45 than imaging, but has only limited operations on images. There is a bridge
46 between the packages.
47- Numeric: the LLNL Numeric Python extension. All sorts of nifty operations
Jack Jansen8a6cdcc2000-09-10 12:02:28 +000048 on matrices and such. This is the most recent version from the sourceforge archive.
Jack Jansencbe7b1c2001-03-06 22:42:12 +000049 Numeric has moved from Extensions to :Lib:site-python, by the way, see the release
50 notes.
Jack Jansen12a37b72000-05-06 23:01:07 +000051- Developers kit: all header files and some tools and sample projects to get you started on
52 writing Python extensions if you have CodeWarrior.
53All these except the DevKit are installed with Easy Install.
Jack Jansen83cab721997-08-26 13:25:06 +000054
Jack Jansencbe7b1c2001-03-06 22:42:12 +000055After the installer finishes it automatically launches the appropriate
56ConfigurePython applet, to finish configuration of your Python. If you run MacOS9
57(or 8 with CarbonLib installed) you can switch back and forth between the classic and
58Carbon versions of Python by running either ConfigurePythonClassic or ConfigurePythonCarbon.
Jack Jansen83cab721997-08-26 13:25:06 +000059
Jack Jansen2e42bdd2000-11-14 20:37:37 +000060Moving your Python installation after installing is generally not a good idea.
61If you have to do this anyway you should remove your preference file, run
Jack Jansen2f9a9e32001-02-17 22:03:42 +000062ConfigurePython and remove all .pyc files. (there's a script zappyc.py that does
63the latter).
Jack Jansen2e42bdd2000-11-14 20:37:37 +000064
Jack Jansen83cab721997-08-26 13:25:06 +000065If you don't have enough memory: the sizes choosen are somewhat
Jack Jansen9080e9b2001-01-23 21:03:52 +000066arbitrary, and they are as high as they are so that test.autotest runs with fewer
67problems. An average Python program can make do with much less memory.
68Try lowering the application sizes in the finder "get info"
69window, and seeing whether the resulting python is still usable.
Jack Jansen83cab721997-08-26 13:25:06 +000070
Jack Jansen83cab721997-08-26 13:25:06 +000071After installing
72----------------
73
Jack Jansen8a6cdcc2000-09-10 12:02:28 +000074It is probably a good idea to run the automatic tests. Start
Jack Jansende519092000-10-12 21:21:43 +000075Python and "import test.autotest".
76
Jack Jansencbe7b1c2001-03-06 22:42:12 +000077Three tests will fail on MacOS9, all with MemoryErrors: test_sha,
Jack Jansen2f9a9e32001-02-17 22:03:42 +000078test_longexp and test_zlib (on MacOSX nothing should fail).
79If you increase the PythonInterpreter memory
Jack Jansencbe7b1c2001-03-06 22:42:12 +000080partition size they will pass (but for longexp you have to increas it by an
81incredible amount). It will, however, print some messages
Jack Jansen2e42bdd2000-11-14 20:37:37 +000082about optional features not supported. You should not worry about these,
83they are modules that are supported by Python on other platforms. Also,
84if you didn't run compileall before autotesting you may run out of
85memory the first time you run the tests. test_socket may also fail if
86you have no internet connection. Please also read the Relnotes file for
87other minor problems with this distribution.
Jack Jansen83cab721997-08-26 13:25:06 +000088
Jack Jansen12a37b72000-05-06 23:01:07 +000089Using Python is most easily done from the IDE, which has a builtin editor,
90debugger and other goodies. The alternative is to use PythonInterpreter,
91which is the lowlevel interpreter with a console-window only (similar to Unix
92Python).
Jack Jansen83cab721997-08-26 13:25:06 +000093
Jack Jansen8a6cdcc2000-09-10 12:02:28 +000094If your program uses Tkinter you MUST run it under PythonInterpreter, Tkinter
95and IDE are incompatible and your program will fail in strange ways.
96
Jack Jansen0b726951997-10-08 15:34:42 +000097Uninstalling
98------------
99
100Two items are installed in the system folder: the interpreter shared
Jack Jansen2f9a9e32001-02-17 22:03:42 +0000101libraries PythonCore and PythonCoreCarbon lives in the Extensions folder and the
Jack Jansencbe7b1c2001-03-06 22:42:12 +0000102"Python 2.1b1 Preferences" file in the Python subfolder in the
Jack Jansen8a6cdcc2000-09-10 12:02:28 +0000103Preferences folder. All the rest of Python lives in the folder you
104installed in.
Jack Jansen0b726951997-10-08 15:34:42 +0000105
Jack Jansen83cab721997-08-26 13:25:06 +0000106Things to see
107-------------
108
Jack Jansen12a37b72000-05-06 23:01:07 +0000109Start off at Mac:Demo:index.html. Read at least the first few sections.
110
Jack Jansen8a6cdcc2000-09-10 12:02:28 +0000111There are also some interesting files in the "Relnotes" folder that may
Jack Jansen83cab721997-08-26 13:25:06 +0000112contain useful information. There is also a first stab at documentation
113(plus examples) in the Mac:Demo folder. The toplevel Demo folder has
Jack Jansen12a37b72000-05-06 23:01:07 +0000114machine-independent demos.
115The Mac:Lib:test folder also has some programs that show simple
Jack Jansen83cab721997-08-26 13:25:06 +0000116capabilities of various modules.
117
Jack Jansen8a6cdcc2000-09-10 12:02:28 +0000118The ":Mac:scripts" folder has some sample scripts. Some are useful, some are
Jack Jansen83cab721997-08-26 13:25:06 +0000119just interesting to look at to see how various things work. The MkDistr,
120mkapplet and fullbuild scripts (plus the ones mentioned above) may help
121you to understand how to use AppleEvents and various other toolboxes
122from python.
123
Jack Jansen8a6cdcc2000-09-10 12:02:28 +0000124Other mac-specific goodies can be found in :Mac:Tools, of which the IDE sources
125and a CGI framework deserve special mention.
126
Jack Jansen83cab721997-08-26 13:25:06 +0000127The 'img' group of modules, which handles I/O of many different image
Jack Jansend0ddb661998-04-27 15:14:36 +0000128formats is included, but without documentation. You can find docs at
129ftp://ftp.cwi.nl/pub/jack/python/img (or somewhere around there).
130
131Finally there is a Mac:Contrib folder which contains some contributed
Jack Jansen12a37b72000-05-06 23:01:07 +0000132software.
Jack Jansen83cab721997-08-26 13:25:06 +0000133
134Upgrading from older Python releases
135------------------------------------
136
Jack Jansen2f9a9e32001-02-17 22:03:42 +0000137Python releases are independent of each other, with
Jack Jansen83cab721997-08-26 13:25:06 +0000138separate Preferences files, shared library names, etc. The good news is
139that this means you can keep your older version around if you are unsure
140whether to upgrade. The bad news is that your old preference settings
141are lost and you have to set them again.
142
Jack Jansen2f9a9e32001-02-17 22:03:42 +0000143After you are satisfied that 2.1 works as expected you can trash
Jack Jansen83cab721997-08-26 13:25:06 +0000144anything in the system folder that has "python" in the name and not
Jack Jansen2f9a9e32001-02-17 22:03:42 +0000145"2.1".
Jack Jansen83cab721997-08-26 13:25:06 +0000146
147The installer
148-------------
149
Jack Jansen12a37b72000-05-06 23:01:07 +0000150The installer for this product was created using Installer VISE
151from MindVision Software. For more information on Installer VISE,
Jack Jansen83cab721997-08-26 13:25:06 +0000152contact:
153MindVision Software
1547201 North 7th Street
155Lincoln, NE 68521-8913
156Voice: 402-477-3269
157Fax: 402-477-1395
158Internet: mindvision@mindvision.com
159http://www.mindvision.com
160
Jack Jansen12a37b72000-05-06 23:01:07 +0000161Just van Rossum <just@letterror.nl> created the initial version of the
162installer (with Installer Vise Lite), and Jack worked from there.
Jack Jansen83cab721997-08-26 13:25:06 +0000163
Jack Jansen01ae9eb2000-04-22 22:57:25 +0000164Thanks!
165-------
166
Jack Jansen965226b2000-09-14 20:58:24 +0000167Thanks go to the whole Python community with Guido in the lead, of
168course. Mac-specific thanks go to the pythonmac-sig, Just van Rossum,
169Corran Webster, Tony Ingraldi, Erik van Blokland, Bill Bedford, Chris
170Stern, Gordon Worley, Oliver Steele, M. Papillon, Steven Majewski, David
Jack Jansen538bd132000-10-19 21:58:27 +0000171Goodger, Chris Barker, Luc Lefebvre, Tattoo Mabonzo K., Russell Finn,
172Tom Bridgman and all the other people who provided feedback, code or both!
Jack Jansen01ae9eb2000-04-22 22:57:25 +0000173
Jack Jansende519092000-10-12 21:21:43 +0000174MacPython includes waste, a TextEdit replacement which is (c) 1998 Marco Piovanelli.
175
Jack Jansen9080e9b2001-01-23 21:03:52 +0000176A special mention is deserved by Matthias Neeracher, who has written the brilliant
177unix-compatible GUSI I/O library, without which MacPython would not have sockets
178or select, and to Alexandre Parenteau, who has ported this library to Carbon.
179
Jack Jansen83cab721997-08-26 13:25:06 +0000180Feedback
181--------
182
183Send bug reports, suggestions, contributions and fanmail to
Jack Jansenecbc1cc1998-01-06 12:13:16 +0000184<jack@cwi.nl>. However, a better way to discuss MacPython is to join the
Jack Jansen83cab721997-08-26 13:25:06 +0000185<pythonmac-sig@python.org> mailing list, which is explicitly meant for
186this purpose.
187
Jack Jansenb25ec912001-03-05 15:44:55 +0000188
Jack Jansen83cab721997-08-26 13:25:06 +0000189Jack Jansen
Jack Jansen12a37b72000-05-06 23:01:07 +0000190Oratrix Development BV
191Valeriusplein 30
192Amsterdam
Jack Jansen83cab721997-08-26 13:25:06 +0000193the Netherlands
194
195<jack@cwi.nl>, http://www.cwi.nl/~jack