Python on OpenVMS
(go to: table of contents,
index,
prev: files from the PYVMS distribution,
next: installing and building)
This section describes how the environment for the installation and
building process is to be prepared.
disk space calculations
The following information should help you to calculate the amount of disk space
required during and after installation:
- PYTHON1_5_2.ZIP - 5086 blocks
- Can be stored anywhere, however this file should be saved for future use.
- PYTHON1_5_2.BCK - 20601 blocks
- Resulting from decompression of PYTHON1_5_2.ZIP. Can be stored anywhere.
This space is only required until the Python directory tree is restored.
- [PYTHON.PYTHON-1_5_2...] - min: 19221 blocks
- The original Python distribution as restored from PYTHON1_5_2.BCK.
On disks with a larger cluster factor more blocks are required.
- PYVMS1_5_2-V005SRC.ZIP - about 2250 blocks
- Can be stored anywhere, however this file should be saved for future use.
- [PYTHON.PYTHON-1_5_2.VMS...] - about 8330 blocks
- The OpenVMS specific parts as restored from PYVMS1_5_2-V005SRC.ZIP.
- translated documentation - about 8580 blocks
- Is stored in the Python tree by running CVT_DOC.COM in each subdirectory
of [.VMS.DOC]. Required only if the HTML documentation in the source tree is
translated to text or printer formats. The number of blocks includes '.RNO'
and other RUNOFF temporary files.
- Alpha object code - about 26000 blocks
- This amount is from compiling /noDEBUG /OPTIMIZE and includes object
modules, the object libraries and the executable.
- VAX object code - about 31890 blocks
- This amount is from compiling /noDEBUG /OPTIMIZE and includes object
modules, the object libraries and the executable.
- compiled Python code - 2695 blocks
- After building the interpreter the source code from the Python library
should be pre-compiled.
- Python documentation
- is not listed here
Total space used on OpenVMS VAX is about 76500 blocks on a disk with a
cluster size of 4 blocks.
These numbers are from the 1.5.2-V005 version. Updates contain bugfixes
for existing files and new functionality in new files so the final disk
space that is required is higher.
select directory for the installation
The top-level of the directory tree is assumed to be named [PYTHON]. The
current Python environment requires 6 directory levels. All instructions so
far assume that the [PYTHON] directory is directly stored in the master file
directory ([000000]) of a disk (e.g. DKA100:). No tests have been done to use
a concealed logical name for the 'disk'.
Beginning with version 1.5.2-V001 logical names are used to
point to certain directories within the build process. The person who installs
the software should be able to type in the commands from the instructions
directly or use cut and paste without changes.
The following logical names are currently used:
- PYVMS_DISK
- Device on which the software is to be installed. Using a concealed device
might be possible, but has not been tested.
- PYVMS_INS_TMP
- A temporary directory for scratch space during the installation.
- PYVMS_INS_TOOLS
- A directory that contains executables of the tools
(UNZIP)
that are used during the installation.
- PYTHON_INCLUDE
- Python include directories - these can be used by other modules that
are used to enhance Python, but do not live in it's directory tree.
- PYTHON_OLB
- Architecture-specific (Alpha, VAX) directory tree that contains object
libraries and object files of the Python core interpreter, OpenVMS support
and extensions.
- PYTHON_VMS
- Almost all of the files from the port to OpenVMS are in this directory
tree.
Example:
$ define PYVMS_DISK DKA100:
$ define PYVMS_INS_TMP DKB100:[PYVMSINSTMP]
$ define PYVMS_INS_TOOLS PYVMS_DISK:[PYTHON.TOOLS]
$!
$ define PYTHON_INCLUDE PYVMS_DISK:[PYTHON.PYTHON-1_5_2], -
PYVMS_DISK:[PYTHON.PYTHON-1_5_2.INCLUDE]
$ _ARCH = "ALPHA"
$ if (F$GETSYI("HW_MODEL").LT.1024) then $ _ARCH = "VAX"
$ define PYTHON_OLB PYVMS_DISK:[PYTHON.PYTHON-1_5_2.O_'_ARCH']
$ define PYTHON_VMS PYVMS_DISK:[PYTHON.PYTHON-1_5_2.VMS]
$ create /DIRECTORY /PROTECTION=(G:RE;W:RE) PYVMS_INS_TMP:
$ create /DIRECTORY /PROTECTION=(G:RE;W:RE) PYVMS_INS_TOOLS:
Place the executable of the
UNZIP tool into
PYVMS_INS_TOOLS:. The processor architecture should be part of the
filename, e.g. UNZIP_ALPHA.EXE
Define a foreign command for UNZIP. The following example can be put into a
command procedure to work on Alpha and VAX systems.
$ _ARCH = "ALPHA"
$ if (F$GETSYI("HW_MODEL").LT.1024) then $ _ARCH = "VAX"
$ UNZIP == "$PYVMS_INS_TOOLS:UNZIP_''_ARCH'.EXE"
$ delete /SYMBOL /LOCAL _ARCH
store software kits
Store the files that you have downloaded into PYVMS_INS_TMP: or
download them now into that directory.
See the 'patches'
page
in the 'General Manual' if you
might have to apply one to your OpenVMS system.
Now you can start the installation / building.
(go to: table of contents,
index,
prev: files from the PYVMS distribution,
next: installing and building)
24-AUG-1999 ZE.