How to install Python 2.0 on your Macintosh ------------------------------------------- If this is your first encounter with Python: you definitely need the common user documentation (common to all platforms). You can find this (in various forms) on www.pythonlabs.com, www.python.org and ftp.python.org. Through there, or via http://www.cwi.nl/~jack/macpython.html you can also find the most recent MacPython distribution. Mac-specific documentation is included in this distribution in folder Mac:Demo. The documentation is sparse, but it will have to serve for now. The documentation is in HTML format, start with index.html. Caveats ------- This is a final candidate version, so use with caution, and please report problems as soon as possible, to pythonmac-sig@python.org. Aside from the general new Python 2.0 features (compared to 1.5.2, there was no 1.6 for the macintosh) like unicode support the main new features of this MacPython release is support for multithreading. This has had some preliminary testing, but please report any success or failure on the mailing list. This installer installs MacPython for PowerPC only, if you really want 68k support you will have to stay with 1.5.2. Or, if you are willing to invest the time and have access to CodeWarrior you are welcome to try and build a 68k distribution, most of the projects and sources are reasonably up to date (May 2000). Contact me for details. This version of Python expects a recent version of Appearance, so it may be that users with pre MacOS 8.5 systems have trouble running it. If that is the case try getting CarbonLib from Apple, I am told this includes Appearance and NavServices. You may also have to disable the "Use navservices" preference for best results. What to install --------------- This installer is PPC only: too many new MacOS features are not available on 68K, and doing workarounds, even just #ifdeffing in the code, is too much work for me right now. If someone wants to revive 68K-MacPython: please do so. The project files still contain the 68K targets (they're simply skipped by the build process) so all that is needed is CodeWarrior, a source distribution and commitment. The optional parts in this distribution are - TK+PIL: Tkinter and support modules, plus Imaging, the Python image manipulation package (allows you to read, write and display images and do lots of operations on them). - img: another imaging package. Has more file format support and is faster than imaging, but has only limited operations on images. There is a bridge between the packages. - Numeric: the LLNL Numeric Python extension. All sorts of nifty operations on matrices and such. This is the most recent version from the sourceforge archive. - Developers kit: all header files and some tools and sample projects to get you started on writing Python extensions if you have CodeWarrior. All these except the DevKit are installed with Easy Install. After the installer finishes it automatically launches the ConfigurePython applet, to finish configuration of your Python. If you have previously installed another copy of 2.0 you should manually remove your preference file first (but no such action is needed for installing beside older MacPythons, and they will live together happily). Moving your Python installation after installing is generally not a good idea. If you have to do this anyway you should remove your preference file, run ConfigurePython and remove all .pyc files. If you don't have enough memory: the sizes choosen are somewhat arbitrary. Try lowering the application sizes in the finder "get info" window, and seeing whether the resulting python is still usable. Some modules (Tkinter comes to mind) need a lot of memory, so it may also be necessary to increase the application size. After installing ---------------- It is probably a good idea to run the automatic tests. Start Python and "import test.autotest". Three tests will fail on the mac, all with MemoryErrors: test_sha, test_longexp and test_zlib. If you increase the PythonInterpreter memory partition size they will pass. It will, however, print some messages about optional features not supported. You should not worry about these, they are modules that are supported by Python on other platforms. Also, if you didn't run compileall before autotesting you may run out of memory the first time you run the tests. test_socket may also fail if you have no internet connection. Please also read the Relnotes file for other minor problems with this distribution. Using Python is most easily done from the IDE, which has a builtin editor, debugger and other goodies. The alternative is to use PythonInterpreter, which is the lowlevel interpreter with a console-window only (similar to Unix Python). If your program uses Tkinter you MUST run it under PythonInterpreter, Tkinter and IDE are incompatible and your program will fail in strange ways. Uninstalling ------------ Two items are installed in the system folder: the interpreter shared library "PythonCore 2.0" lives in the Extensions folder and the "Python 2.0 Preferences" file in the Python subfolder in the Preferences folder. All the rest of Python lives in the folder you installed in. Things to see ------------- Start off at Mac:Demo:index.html. Read at least the first few sections. There are also some interesting files in the "Relnotes" folder that may contain useful information. There is also a first stab at documentation (plus examples) in the Mac:Demo folder. The toplevel Demo folder has machine-independent demos. The Mac:Lib:test folder also has some programs that show simple capabilities of various modules. The ":Mac:scripts" folder has some sample scripts. Some are useful, some are just interesting to look at to see how various things work. The MkDistr, mkapplet and fullbuild scripts (plus the ones mentioned above) may help you to understand how to use AppleEvents and various other toolboxes from python. Other mac-specific goodies can be found in :Mac:Tools, of which the IDE sources and a CGI framework deserve special mention. The 'img' group of modules, which handles I/O of many different image formats is included, but without documentation. You can find docs at ftp://ftp.cwi.nl/pub/jack/python/img (or somewhere around there). Finally there is a Mac:Contrib folder which contains some contributed software. Upgrading from older Python releases ------------------------------------ Since release 1.4 Python releases are independent of each other, with separate Preferences files, shared library names, etc. The good news is that this means you can keep your older version around if you are unsure whether to upgrade. The bad news is that your old preference settings are lost and you have to set them again. After you are satisfied that 2.0 works as expected you can trash anything in the system folder that has "python" in the name and not "2.0". The installer ------------- The installer for this product was created using Installer VISE from MindVision Software. For more information on Installer VISE, contact: MindVision Software 7201 North 7th Street Lincoln, NE 68521-8913 Voice: 402-477-3269 Fax: 402-477-1395 Internet: mindvision@mindvision.com http://www.mindvision.com Just van Rossum created the initial version of the installer (with Installer Vise Lite), and Jack worked from there. Thanks! ------- Thanks go to the whole Python community with Guido in the lead, of course. Mac-specific thanks go to the pythonmac-sig, Just van Rossum, Corran Webster, Tony Ingraldi, Erik van Blokland, Bill Bedford, Chris Stern, Gordon Worley, Oliver Steele, M. Papillon, Steven Majewski, David Goodger, Chris Barker, Luc Lefebvre, Tattoo Mabonzo K., Russell Finn, Tom Bridgman and all the other people who provided feedback, code or both! MacPython includes waste, a TextEdit replacement which is (c) 1998 Marco Piovanelli. Feedback -------- Send bug reports, suggestions, contributions and fanmail to . However, a better way to discuss MacPython is to join the mailing list, which is explicitly meant for this purpose. Alternatively, you can try sending to comp.lang.python or python-list@cwi.nl, but since I read the newsgroup, not the mailinglist, I may miss it there (but other people may know quite a bit more than me anyway:-). Jack Jansen Oratrix Development BV Valeriusplein 30 Amsterdam the Netherlands , http://www.cwi.nl/~jack