mirror of
https://github.com/python/cpython.git
synced 2024-11-24 10:24:35 +08:00
227 lines
9.2 KiB
Plaintext
227 lines
9.2 KiB
Plaintext
How to install MacPython-OS9 2.3a1 on your Macintosh
|
|
----------------------------------------------------
|
|
|
|
This is a MacPython that can run on Mac OS 8.6 with CarbonLib
|
|
installed, Mac OS 9 and Mac OS X. It is the direct successor of MacPython 2.2.
|
|
|
|
For Mac OS X users: you are probably better off with the normal unix distribution
|
|
of Python. That version also runs from the commandline, and if you do a framework
|
|
build it will contain all the functionality of this version too. A prebuilt
|
|
version will be available starting with the beta distributions.
|
|
|
|
If you are upgrading from a previous MacPython you should read :Misc:NEWS,
|
|
which lists the new features of this Python release. As of this release
|
|
the Mac-specific release notes have been moved to the "Mac" section of
|
|
the general NEWS file.
|
|
|
|
Two changes since 2.2 deserve special mention:
|
|
- Most Mac-specific modules have moved to :Lib:plat-mac. :Mac:Lib now contains
|
|
only modules that are not shared with MacPython-OSX 2.3.
|
|
- macfs is now a pure Python wrapper module around various modules in the
|
|
Carbon package. For 2.3a1 only this wrapping is incomplete: fsspec.SetDates()
|
|
does not work yet. If you encounter any other problems please report them.
|
|
|
|
------
|
|
|
|
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.
|
|
|
|
If you want a MacPython that runs on systems without Carbon support (8.1
|
|
up to 8.6 without CarbonLib) you should get MacPython 2.2.2.
|
|
|
|
If you want 68k support you will have get MacPython 1.5.2.
|
|
|
|
What to install
|
|
---------------
|
|
|
|
The optional parts in this distribution are
|
|
- PIL: the Python image manipulation package (allows you to read, write
|
|
and display images and do lots of operations on them). Tkinter is no
|
|
longer supported, a working Carbon version is Tk is not available.
|
|
- 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 version 22.
|
|
- 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.
|
|
|
|
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. (there's a script zappyc.py that does the latter).
|
|
|
|
If you don't have enough memory: the sizes choosen are somewhat
|
|
arbitrary, and they are as high as they are so that test.autotest runs
|
|
with fewer problems. An average Python program can make do with much
|
|
less memory. Try lowering the application sizes in the finder "get
|
|
info" window, and seeing whether the resulting python is still usable.
|
|
|
|
After installing
|
|
----------------
|
|
|
|
It is probably a good idea to run the automatic tests. Start
|
|
Python and "import test.regrtest ; test.regrtest.main()".
|
|
|
|
test_httplib fails with an unexpected output error,
|
|
this problem is being investigated.
|
|
|
|
test_socket fails, this problem is being investigated.
|
|
|
|
Three tests will fail on MacOS9 with MemoryErrors:
|
|
test_longexp, test_sha and test_zlib (on MacOSX these should pass).
|
|
|
|
If you increase the PythonInterpreter memory partition size they will
|
|
pass (but for longexp you have to increase it by an incredible amount,
|
|
400MB is rumoured). 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.
|
|
|
|
OSX Multiple users note
|
|
-----------------------
|
|
|
|
Interaction with Mac OS X multiple users has been tested only very lightly.
|
|
If you install as a privileged user everything installs fine.
|
|
|
|
If you install as a non-privileged user everything should install in your local
|
|
per-user folders. But: as there is no global PythonCore you can only run applets
|
|
if they reside in your toplevel Python folder.
|
|
|
|
If you install as a privileged user and then try to run
|
|
Python as another (non-privileged) user you may encounter a problem with
|
|
not having a preference file: the symptom is failing to import all sorts
|
|
of standard modules. If you remove your per-user Python preference files
|
|
(in ~/Library/Preferences) and then run PythonInterpreter once everything should
|
|
be fine.
|
|
|
|
Uninstalling
|
|
------------
|
|
|
|
Up to three items are installed in the MacOS 8 or 9 system folder: the interpreter
|
|
shared library PythonCore lives in the Extensions
|
|
folder and the "Python 2.3a1 Preferences" file in the Python subfolder
|
|
in the Preferences folder. All the rest of Python lives in the folder
|
|
you installed in.
|
|
|
|
On OSX the library is installed in /Library/CFMSupport. The ConfigurePython
|
|
applets will complain if you have no right to create the libraries there
|
|
(you need Admin privileges). This has one consequence: you will not be able to
|
|
run applets unless they reside in the MacPython folder (such as the IDE or
|
|
EditPythonPrefs). If you try to run an applet stored elsewhere you will
|
|
get a "Cannot locate PythonCore" error message.
|
|
|
|
Things to see
|
|
-------------
|
|
|
|
Start off at Mac:Demo:index.html. Read at least the first few sections.
|
|
|
|
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: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
|
|
------------------------------------
|
|
|
|
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.3a1 works as expected you can trash
|
|
anything in the system folder that has "python" in the name and not
|
|
"2.3a1".
|
|
|
|
The ConfigurePython applet will try to detect incompatible
|
|
preferences files and offer to remove them. This means that re-running
|
|
ConfigurePython after a second install of the same MacPython version
|
|
(or after moving the Python folder) should fix things up correctly.
|
|
|
|
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 <just@letterror.com> created the initial version of the
|
|
installer (with Installer Vise Lite), and Jack worked from there.
|
|
|
|
Thanks!
|
|
-------
|
|
|
|
As of Python 2.3 the MacPython thanks list has been merged into the
|
|
general acknowledgements, see :Misc:ACKS.
|
|
|
|
MacPython includes waste, a TextEdit replacement which is (c) 1998
|
|
Marco Piovanelli.
|
|
|
|
A special mention is deserved by Matthias Neeracher, who has written
|
|
the brilliant unix-compatible GUSI I/O library, without which
|
|
MacPython would not have sockets or select, and to Alexandre
|
|
Parenteau, who has ported this library to Carbon.
|
|
|
|
Feedback
|
|
--------
|
|
|
|
Send bug reports, suggestions, contributions and fanmail to
|
|
<jack@cwi.nl>. However, a better way to discuss MacPython is to join the
|
|
<pythonmac-sig@python.org> mailing list, which is explicitly meant for
|
|
this purpose.
|
|
|
|
|
|
Jack Jansen
|
|
CWI
|
|
Kruislaan 413
|
|
1098 SJ Amsterdam
|
|
the Netherlands
|
|
|
|
<jack@cwi.nl>, http://www.cwi.nl/~jack
|