(LOGO.JPG) Python for OpenVMS

(go to: table of contents, index, prev: files from the Python for OpenVMS 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. Sizes are taken from a disk with a cluster size of 4.
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...] - about 19478/22176 blocks
The original Python distribution as restored from PYTHON1_5_2.BCK. On disks with a larger cluster factor more blocks are required.

PYTHON-1_5_2-V007SRC.ZIP - about 2990 blocks
Can be stored anywhere, however this file should be saved for future use.

[PYTHON.PYTHON-1_5_2.VMS...] - about 9663/10880 blocks
The OpenVMS specific parts as restored from PYTHON-1_5_2-V007SRC.ZIP. Some files outside of this directory tree are included in the size.

translated documentation - about 7241/7672 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 @@@@ blocks
This amount is from compiling /DEBUG /noOPTIMIZE and includes translated data files, object modules, the object libraries and the executable.

VAX object code - about 24601/24820 blocks
This amount is from compiling /DEBUG /noOPTIMIZE and includes translated data files, object modules, the object libraries and the executable.

compiled Python code - about 2670 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 63732/68508 blocks (/DEBUG /noOPTIMIZE, all modules enabled, threading enabled) on a disk with a cluster size of 4 blocks.

These numbers are from the 1.5.2-V007 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'.

Note that during first-time execution of the procedure SETUP.COM it creates a subdirectory named [.PYTHON_TMP] where the logical name SYS$SCRATCH points to.

logical names

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:

PYTHON_DISK
Device on which the software is to be installed. Using a concealed device might be possible, but has not been tested.

PYTHON_DOC_DEMO
Directory of the 'Demoes Manual'. It is used by the DEMO_EXTRACT.PY script. See 'extracting demoes from the manual' in the 'Demoes Manual'.

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_INS_TMP
A temporary directory for scratch space during the installation.

PYTHON_INS_TOOLS
A directory that contains executables of the tools (UNZIP) that are used during the installation.

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_TOOLS
Directory for tools that are delivered with Python for OpenVMS.

PYTHON_VMS
Almost all of the files from the port to OpenVMS are in this directory tree.
Example:
$ define  PYTHON_DISK       DKA100:
$ define  PYTHON_DOC_DEMO   -
              PYTHON_DISK:[PYTHON.PYTHON-1_5_2.VMS.DOC.DEMO]
$ define  PYTHON_INCLUDE    PYTHON_DISK:[PYTHON.PYTHON-1_5_2], -
                            PYTHON_DISK:[PYTHON.PYTHON-1_5_2.INCLUDE]
$ define  PYTHON_INS_TMP    DKB100:[PYTHON_INSTMP]
$ define  PYTHON_INS_TOOLS  PYTHON_DISK:[PYTHON.TOOLS]
$!
$ _ARCH = "ALPHA"
$ if (F$GETSYI("CPU").le.127) then $ _ARCH = "VAX"
$ define  PYTHON_OLB        -
              PYTHON_DISK:[PYTHON.PYTHON-1_5_2.VMS.O_'_ARCH']
$ define  PYTHON_TOOLS      PYTHON_DISK:[PYTHON.PYTHON-1_5_2.VMS.TOOLS]
$ define  PYTHON_VMS        PYTHON_DISK:[PYTHON.PYTHON-1_5_2.VMS]
$!
$ delete /SYMBOL /LOCAL _ARCH

create directories

$ create /DIRECTORY /PROTECTION=(G:RE;W:RE) PYTHON_INS_TMP:
$ create /DIRECTORY /PROTECTION=(G:RE;W:RE) PYTHON_INS_TOOLS:

foreign commands

Place the executable of the UNZIP tool into PYTHON_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("CPU").le.127) then $ _ARCH = "VAX"
$ UNZIP == "$PYTHON_INS_TOOLS:UNZIP_''_ARCH'.EXE"
$ delete /SYMBOL /LOCAL _ARCH

store software kits

Store the files that you have downloaded into PYTHON_INS_TMP: or download them now into that directory.

OpenVMS patches

See the 'patches' page in the 'General Manual' whether you might have to apply one to your OpenVMS system.


(go to: table of contents, index, prev: files from the Python for OpenVMS distribution, next: installing and building)

05-AUG-2000 ZE.