mirror of https://github.com/python/cpython
(Minimal) instructions on how to build python from source
This commit is contained in:
parent
b696b252b3
commit
b678975167
|
@ -0,0 +1,75 @@
|
|||
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.
|
Loading…
Reference in New Issue