Jack Jansen | cbe7b1c | 2001-03-06 22:42:12 +0000 | [diff] [blame] | 1 | How to install Python 2.1b1 on your Macintosh |
Jack Jansen | 2f9a9e3 | 2001-02-17 22:03:42 +0000 | [diff] [blame] | 2 | --------------------------------------------- |
| 3 | |
Jack Jansen | cbe7b1c | 2001-03-06 22:42:12 +0000 | [diff] [blame] | 4 | This is the first beta for a MacPython that can run on classic MacOS (from 8.1 |
| 5 | onwards) and natively on MacOSX. The installer tries to work out whether you can |
| 6 | use the Carbon version or not. This is also the first MacPython distribution |
| 7 | to be packaged as an active installer, which only downloads the parts you actually |
| 8 | need. Let me hear about problems in these areas. |
Jack Jansen | 2f9a9e3 | 2001-02-17 22:03:42 +0000 | [diff] [blame] | 9 | |
| 10 | You should definitely read the Relnotes file too. |
| 11 | |
Jack Jansen | 8ef786e | 2001-03-15 14:27:09 +0000 | [diff] [blame^] | 12 | A special note about the active installer: do not background it, it will hang |
| 13 | your machine. |
| 14 | |
Jack Jansen | 2f9a9e3 | 2001-02-17 22:03:42 +0000 | [diff] [blame] | 15 | ------ |
Jack Jansen | 83cab72 | 1997-08-26 13:25:06 +0000 | [diff] [blame] | 16 | |
| 17 | If this is your first encounter with Python: you definitely need the |
| 18 | common user documentation (common to all platforms). You can find this |
Jack Jansen | 538bd13 | 2000-10-19 21:58:27 +0000 | [diff] [blame] | 19 | (in various forms) on www.pythonlabs.com, www.python.org and |
| 20 | ftp.python.org. Through there, or via |
| 21 | http://www.cwi.nl/~jack/macpython.html you can also find the most recent |
| 22 | MacPython distribution. |
Jack Jansen | 83cab72 | 1997-08-26 13:25:06 +0000 | [diff] [blame] | 23 | |
| 24 | Mac-specific documentation is included in this distribution in folder |
| 25 | Mac:Demo. The documentation is sparse, but it will have to serve for |
| 26 | now. The documentation is in HTML format, start with index.html. |
| 27 | |
Jack Jansen | d0ddb66 | 1998-04-27 15:14:36 +0000 | [diff] [blame] | 28 | Caveats |
| 29 | ------- |
Jack Jansen | 2f9a9e3 | 2001-02-17 22:03:42 +0000 | [diff] [blame] | 30 | Aside from the general new Python 2.1 features compared to 2.0 the main |
| 31 | feature of this release is Carbon support. |
Jack Jansen | ffd61a6 | 2000-04-09 18:37:50 +0000 | [diff] [blame] | 32 | |
Jack Jansen | cbe7b1c | 2001-03-06 22:42:12 +0000 | [diff] [blame] | 33 | This installer installs MacPython for classic PPC MacOS, MacPython for Carbon |
| 34 | (OS X, OS 9 or OS8 with CarbonLib installed) or both, depending on your |
| 35 | configuration. By selecting custom install you can bypass these tests and |
| 36 | install what you want. |
Jack Jansen | ecbc1cc | 1998-01-06 12:13:16 +0000 | [diff] [blame] | 37 | |
Jack Jansen | cbe7b1c | 2001-03-06 22:42:12 +0000 | [diff] [blame] | 38 | If you want 68k support you will have to stay with 1.5.2. |
Jack Jansen | 965226b | 2000-09-14 20:58:24 +0000 | [diff] [blame] | 39 | |
Jack Jansen | 83cab72 | 1997-08-26 13:25:06 +0000 | [diff] [blame] | 40 | What to install |
| 41 | --------------- |
| 42 | |
Jack Jansen | 12a37b7 | 2000-05-06 23:01:07 +0000 | [diff] [blame] | 43 | The optional parts in this distribution are |
| 44 | - TK+PIL: Tkinter and support modules, plus Imaging, the Python image manipulation |
| 45 | package (allows you to read, write and display images and do lots of operations on them). |
Jack Jansen | cbe7b1c | 2001-03-06 22:42:12 +0000 | [diff] [blame] | 46 | For Carbon MacPython you only get PIL: there is no Tcl/Tk for Carbon yet. |
Jack Jansen | 12a37b7 | 2000-05-06 23:01:07 +0000 | [diff] [blame] | 47 | - img: another imaging package. Has more file format support and is faster |
| 48 | than imaging, but has only limited operations on images. There is a bridge |
| 49 | between the packages. |
| 50 | - Numeric: the LLNL Numeric Python extension. All sorts of nifty operations |
Jack Jansen | 8a6cdcc | 2000-09-10 12:02:28 +0000 | [diff] [blame] | 51 | on matrices and such. This is the most recent version from the sourceforge archive. |
Jack Jansen | cbe7b1c | 2001-03-06 22:42:12 +0000 | [diff] [blame] | 52 | Numeric has moved from Extensions to :Lib:site-python, by the way, see the release |
| 53 | notes. |
Jack Jansen | 12a37b7 | 2000-05-06 23:01:07 +0000 | [diff] [blame] | 54 | - Developers kit: all header files and some tools and sample projects to get you started on |
| 55 | writing Python extensions if you have CodeWarrior. |
| 56 | All these except the DevKit are installed with Easy Install. |
Jack Jansen | 83cab72 | 1997-08-26 13:25:06 +0000 | [diff] [blame] | 57 | |
Jack Jansen | cbe7b1c | 2001-03-06 22:42:12 +0000 | [diff] [blame] | 58 | After the installer finishes it automatically launches the appropriate |
| 59 | ConfigurePython applet, to finish configuration of your Python. If you run MacOS9 |
| 60 | (or 8 with CarbonLib installed) you can switch back and forth between the classic and |
| 61 | Carbon versions of Python by running either ConfigurePythonClassic or ConfigurePythonCarbon. |
Jack Jansen | 83cab72 | 1997-08-26 13:25:06 +0000 | [diff] [blame] | 62 | |
Jack Jansen | 2e42bdd | 2000-11-14 20:37:37 +0000 | [diff] [blame] | 63 | Moving your Python installation after installing is generally not a good idea. |
| 64 | If you have to do this anyway you should remove your preference file, run |
Jack Jansen | 2f9a9e3 | 2001-02-17 22:03:42 +0000 | [diff] [blame] | 65 | ConfigurePython and remove all .pyc files. (there's a script zappyc.py that does |
| 66 | the latter). |
Jack Jansen | 2e42bdd | 2000-11-14 20:37:37 +0000 | [diff] [blame] | 67 | |
Jack Jansen | 83cab72 | 1997-08-26 13:25:06 +0000 | [diff] [blame] | 68 | If you don't have enough memory: the sizes choosen are somewhat |
Jack Jansen | 9080e9b | 2001-01-23 21:03:52 +0000 | [diff] [blame] | 69 | arbitrary, and they are as high as they are so that test.autotest runs with fewer |
| 70 | problems. An average Python program can make do with much less memory. |
| 71 | Try lowering the application sizes in the finder "get info" |
| 72 | window, and seeing whether the resulting python is still usable. |
Jack Jansen | 83cab72 | 1997-08-26 13:25:06 +0000 | [diff] [blame] | 73 | |
Jack Jansen | 83cab72 | 1997-08-26 13:25:06 +0000 | [diff] [blame] | 74 | After installing |
| 75 | ---------------- |
| 76 | |
Jack Jansen | 8a6cdcc | 2000-09-10 12:02:28 +0000 | [diff] [blame] | 77 | It is probably a good idea to run the automatic tests. Start |
Jack Jansen | de51909 | 2000-10-12 21:21:43 +0000 | [diff] [blame] | 78 | Python and "import test.autotest". |
| 79 | |
Jack Jansen | cbe7b1c | 2001-03-06 22:42:12 +0000 | [diff] [blame] | 80 | Three tests will fail on MacOS9, all with MemoryErrors: test_sha, |
Jack Jansen | 2f9a9e3 | 2001-02-17 22:03:42 +0000 | [diff] [blame] | 81 | test_longexp and test_zlib (on MacOSX nothing should fail). |
| 82 | If you increase the PythonInterpreter memory |
Jack Jansen | cbe7b1c | 2001-03-06 22:42:12 +0000 | [diff] [blame] | 83 | partition size they will pass (but for longexp you have to increas it by an |
| 84 | incredible amount). It will, however, print some messages |
Jack Jansen | 2e42bdd | 2000-11-14 20:37:37 +0000 | [diff] [blame] | 85 | about optional features not supported. You should not worry about these, |
| 86 | they are modules that are supported by Python on other platforms. Also, |
| 87 | if you didn't run compileall before autotesting you may run out of |
| 88 | memory the first time you run the tests. test_socket may also fail if |
| 89 | you have no internet connection. Please also read the Relnotes file for |
| 90 | other minor problems with this distribution. |
Jack Jansen | 83cab72 | 1997-08-26 13:25:06 +0000 | [diff] [blame] | 91 | |
Jack Jansen | 12a37b7 | 2000-05-06 23:01:07 +0000 | [diff] [blame] | 92 | Using Python is most easily done from the IDE, which has a builtin editor, |
| 93 | debugger and other goodies. The alternative is to use PythonInterpreter, |
| 94 | which is the lowlevel interpreter with a console-window only (similar to Unix |
| 95 | Python). |
Jack Jansen | 83cab72 | 1997-08-26 13:25:06 +0000 | [diff] [blame] | 96 | |
Jack Jansen | 8a6cdcc | 2000-09-10 12:02:28 +0000 | [diff] [blame] | 97 | If your program uses Tkinter you MUST run it under PythonInterpreter, Tkinter |
| 98 | and IDE are incompatible and your program will fail in strange ways. |
| 99 | |
Jack Jansen | 0b72695 | 1997-10-08 15:34:42 +0000 | [diff] [blame] | 100 | Uninstalling |
| 101 | ------------ |
| 102 | |
| 103 | Two items are installed in the system folder: the interpreter shared |
Jack Jansen | 2f9a9e3 | 2001-02-17 22:03:42 +0000 | [diff] [blame] | 104 | libraries PythonCore and PythonCoreCarbon lives in the Extensions folder and the |
Jack Jansen | cbe7b1c | 2001-03-06 22:42:12 +0000 | [diff] [blame] | 105 | "Python 2.1b1 Preferences" file in the Python subfolder in the |
Jack Jansen | 8a6cdcc | 2000-09-10 12:02:28 +0000 | [diff] [blame] | 106 | Preferences folder. All the rest of Python lives in the folder you |
| 107 | installed in. |
Jack Jansen | 0b72695 | 1997-10-08 15:34:42 +0000 | [diff] [blame] | 108 | |
Jack Jansen | 83cab72 | 1997-08-26 13:25:06 +0000 | [diff] [blame] | 109 | Things to see |
| 110 | ------------- |
| 111 | |
Jack Jansen | 12a37b7 | 2000-05-06 23:01:07 +0000 | [diff] [blame] | 112 | Start off at Mac:Demo:index.html. Read at least the first few sections. |
| 113 | |
Jack Jansen | 8a6cdcc | 2000-09-10 12:02:28 +0000 | [diff] [blame] | 114 | There are also some interesting files in the "Relnotes" folder that may |
Jack Jansen | 83cab72 | 1997-08-26 13:25:06 +0000 | [diff] [blame] | 115 | contain useful information. There is also a first stab at documentation |
| 116 | (plus examples) in the Mac:Demo folder. The toplevel Demo folder has |
Jack Jansen | 12a37b7 | 2000-05-06 23:01:07 +0000 | [diff] [blame] | 117 | machine-independent demos. |
| 118 | The Mac:Lib:test folder also has some programs that show simple |
Jack Jansen | 83cab72 | 1997-08-26 13:25:06 +0000 | [diff] [blame] | 119 | capabilities of various modules. |
| 120 | |
Jack Jansen | 8a6cdcc | 2000-09-10 12:02:28 +0000 | [diff] [blame] | 121 | The ":Mac:scripts" folder has some sample scripts. Some are useful, some are |
Jack Jansen | 83cab72 | 1997-08-26 13:25:06 +0000 | [diff] [blame] | 122 | just interesting to look at to see how various things work. The MkDistr, |
| 123 | mkapplet and fullbuild scripts (plus the ones mentioned above) may help |
| 124 | you to understand how to use AppleEvents and various other toolboxes |
| 125 | from python. |
| 126 | |
Jack Jansen | 8a6cdcc | 2000-09-10 12:02:28 +0000 | [diff] [blame] | 127 | Other mac-specific goodies can be found in :Mac:Tools, of which the IDE sources |
| 128 | and a CGI framework deserve special mention. |
| 129 | |
Jack Jansen | 83cab72 | 1997-08-26 13:25:06 +0000 | [diff] [blame] | 130 | The 'img' group of modules, which handles I/O of many different image |
Jack Jansen | d0ddb66 | 1998-04-27 15:14:36 +0000 | [diff] [blame] | 131 | formats is included, but without documentation. You can find docs at |
| 132 | ftp://ftp.cwi.nl/pub/jack/python/img (or somewhere around there). |
| 133 | |
| 134 | Finally there is a Mac:Contrib folder which contains some contributed |
Jack Jansen | 12a37b7 | 2000-05-06 23:01:07 +0000 | [diff] [blame] | 135 | software. |
Jack Jansen | 83cab72 | 1997-08-26 13:25:06 +0000 | [diff] [blame] | 136 | |
| 137 | Upgrading from older Python releases |
| 138 | ------------------------------------ |
| 139 | |
Jack Jansen | 2f9a9e3 | 2001-02-17 22:03:42 +0000 | [diff] [blame] | 140 | Python releases are independent of each other, with |
Jack Jansen | 83cab72 | 1997-08-26 13:25:06 +0000 | [diff] [blame] | 141 | separate Preferences files, shared library names, etc. The good news is |
| 142 | that this means you can keep your older version around if you are unsure |
| 143 | whether to upgrade. The bad news is that your old preference settings |
| 144 | are lost and you have to set them again. |
| 145 | |
Jack Jansen | 2f9a9e3 | 2001-02-17 22:03:42 +0000 | [diff] [blame] | 146 | After you are satisfied that 2.1 works as expected you can trash |
Jack Jansen | 83cab72 | 1997-08-26 13:25:06 +0000 | [diff] [blame] | 147 | anything in the system folder that has "python" in the name and not |
Jack Jansen | 2f9a9e3 | 2001-02-17 22:03:42 +0000 | [diff] [blame] | 148 | "2.1". |
Jack Jansen | 83cab72 | 1997-08-26 13:25:06 +0000 | [diff] [blame] | 149 | |
| 150 | The installer |
| 151 | ------------- |
| 152 | |
Jack Jansen | 12a37b7 | 2000-05-06 23:01:07 +0000 | [diff] [blame] | 153 | The installer for this product was created using Installer VISE |
| 154 | from MindVision Software. For more information on Installer VISE, |
Jack Jansen | 83cab72 | 1997-08-26 13:25:06 +0000 | [diff] [blame] | 155 | contact: |
| 156 | MindVision Software |
| 157 | 7201 North 7th Street |
| 158 | Lincoln, NE 68521-8913 |
| 159 | Voice: 402-477-3269 |
| 160 | Fax: 402-477-1395 |
| 161 | Internet: mindvision@mindvision.com |
| 162 | http://www.mindvision.com |
| 163 | |
Jack Jansen | 12a37b7 | 2000-05-06 23:01:07 +0000 | [diff] [blame] | 164 | Just van Rossum <just@letterror.nl> created the initial version of the |
| 165 | installer (with Installer Vise Lite), and Jack worked from there. |
Jack Jansen | 83cab72 | 1997-08-26 13:25:06 +0000 | [diff] [blame] | 166 | |
Jack Jansen | 01ae9eb | 2000-04-22 22:57:25 +0000 | [diff] [blame] | 167 | Thanks! |
| 168 | ------- |
| 169 | |
Jack Jansen | 965226b | 2000-09-14 20:58:24 +0000 | [diff] [blame] | 170 | Thanks go to the whole Python community with Guido in the lead, of |
| 171 | course. Mac-specific thanks go to the pythonmac-sig, Just van Rossum, |
| 172 | Corran Webster, Tony Ingraldi, Erik van Blokland, Bill Bedford, Chris |
| 173 | Stern, Gordon Worley, Oliver Steele, M. Papillon, Steven Majewski, David |
Jack Jansen | 538bd13 | 2000-10-19 21:58:27 +0000 | [diff] [blame] | 174 | Goodger, Chris Barker, Luc Lefebvre, Tattoo Mabonzo K., Russell Finn, |
Jack Jansen | 8ef786e | 2001-03-15 14:27:09 +0000 | [diff] [blame^] | 175 | Tom Bridgman Russel Owen and all the other people who provided feedback, |
| 176 | code or both! |
Jack Jansen | 01ae9eb | 2000-04-22 22:57:25 +0000 | [diff] [blame] | 177 | |
Jack Jansen | de51909 | 2000-10-12 21:21:43 +0000 | [diff] [blame] | 178 | MacPython includes waste, a TextEdit replacement which is (c) 1998 Marco Piovanelli. |
| 179 | |
Jack Jansen | 9080e9b | 2001-01-23 21:03:52 +0000 | [diff] [blame] | 180 | A special mention is deserved by Matthias Neeracher, who has written the brilliant |
| 181 | unix-compatible GUSI I/O library, without which MacPython would not have sockets |
| 182 | or select, and to Alexandre Parenteau, who has ported this library to Carbon. |
| 183 | |
Jack Jansen | 83cab72 | 1997-08-26 13:25:06 +0000 | [diff] [blame] | 184 | Feedback |
| 185 | -------- |
| 186 | |
| 187 | Send bug reports, suggestions, contributions and fanmail to |
Jack Jansen | ecbc1cc | 1998-01-06 12:13:16 +0000 | [diff] [blame] | 188 | <jack@cwi.nl>. However, a better way to discuss MacPython is to join the |
Jack Jansen | 83cab72 | 1997-08-26 13:25:06 +0000 | [diff] [blame] | 189 | <pythonmac-sig@python.org> mailing list, which is explicitly meant for |
| 190 | this purpose. |
| 191 | |
Jack Jansen | b25ec91 | 2001-03-05 15:44:55 +0000 | [diff] [blame] | 192 | |
Jack Jansen | 83cab72 | 1997-08-26 13:25:06 +0000 | [diff] [blame] | 193 | Jack Jansen |
Jack Jansen | 12a37b7 | 2000-05-06 23:01:07 +0000 | [diff] [blame] | 194 | Oratrix Development BV |
| 195 | Valeriusplein 30 |
| 196 | Amsterdam |
Jack Jansen | 83cab72 | 1997-08-26 13:25:06 +0000 | [diff] [blame] | 197 | the Netherlands |
| 198 | |
| 199 | <jack@cwi.nl>, http://www.cwi.nl/~jack |