| How to build Python from a source distribution. |
| ----------------------------------------------- |
| |
| You will need a Python source distribution in tar form. So, the |
| first thing you need is a tar program for the mac. Suntar is |
| reasonable and can be found at the info-mac sites. Edit the |
| preferences to make it extract C sources with creator CWIE |
| and .py files as text files with creator PYTH, this will save |
| you work later. |
| |
| You will also need CodeWarrior 7. If you have another development |
| environment you are on your own, basically. |
| |
| You may also need the img distribution and the stdwin distribution. |
| If you don't want them you may have to edit some of the projects |
| to remove references to them. |
| |
| When you've extracted everything you may have to unpack the |
| .hqx files in Mac:Resources and Mac:Mwerks:Projects (but suntar |
| may have done this for you already). |
| |
| Next, create your build directories. I use the following naming |
| convention: |
| build.macppc.shared PowerPC shared-library |
| build.mac68k.stand 68K non-shared |
| and there are also projects for ppc standalone and some others, they |
| may be useful at times. The project files expect the build directories |
| to be located right in the main python folder, if you put them elsewhere |
| you will have to edit the access paths. |
| |
| Move MWCRuntimePython.µ, PythonCore.µ, PythonPPC.µ and PythonApplet.µ |
| (from the Mac:Mwerks:Projects folder) to build.macppc.shared, move |
| Python68K.µ to build.mac68k.stand. |
| |
| Build the projects. For the PPC projects, keep the order given above. |
| Do *not* run the python interpreter yet. First, move the interpreter to |
| the main python folder. For PPC, also move PythonCore to the main python folder. |
| |
| Now try your python interpreter, this will create an initial preferences file. |
| |
| For 68K python you are now done. |
| |
| For PPC Python, don't try complicated scripts yet, you first have to create |
| the dynamically loadable modules. Create a folder PlugIns (in the toplevel |
| python folder) and move all the projects that have "module" or "modules" in |
| their name there. Build these projects. This will create a number of ".exp" |
| files, edit these files to contain only all the "init" modules, and build |
| the projects again. This latter step isn't really essential, so feel free |
| to skip it. |
| |
| The next step is to create aliases for the various modules that "live together" |
| in one shared library. For this, take MkPluginAliases.py and MkPluginAliases.rsrc |
| from the Mac:scripts folder and move or copy them to the python home folder. |
| Run the script from there. |
| |
| If you haven't created all plugins you'll get some errors about files not existing, |
| don't worry. Don't forget to move the scripts back. |
| |
| Next, make an alias of PythonCore (also named PythonCore) and put it in |
| System Folder:Extensions. This will ensure that you can run python anywhere, |
| not just from the folder where PythonCore lives. |
| |
| Most of your environment is now setup. You can try it by running EditPythonPrefs.py |
| (in Mac:scripts), it should now work from there. |
| |
| Lastly, you should setup some stuff needed for applet creation. First, you should put |
| PythonApplet (or an alias to it) in the python home folder. Next, you should turn |
| mkapplet.py (from mac:scripts) into an applet itself: double-click it and give it itself |
| as input in the input file dialog. |
| |
| Now that you have created mkapplet you can use this as a droplet: drag-and-drop python sources |
| onto it (EditPythonPrefs.py and RunLibScript.py come to mind) and the applets will be |
| created. |
| |
| Jack Jansen, CWI, 20 December 1995. |