Perl for OpenVMS
Installation Guide and Release Notes

January 2005

Perl Version 5.6.1 for OpenVMS Alpha (based on Perl Version 5.6.1)
CPQ-AXPVMS-PERL-V0506-1-1.PCSI-DCX-AXPEXE

Perl Version V5.6.1-1A1 for OpenVMS I64 (based on Perl Version 5.6.1 ECO 3)
HP-I64VMS-PERL-V0506-1A1-1.PCSI_SFX_I64EXE

Contents


What's New
Software Prerequisites
Documentation
Downloading the kit
Expanding the kit
Upgrading Perl from an Earlier Version
Installing Perl for OpenVMS
Post-Installation Tasks
Removing Perl for OpenVMS
Release Notes


What’s New

Perl for OpenVMS has been ported to OpenVMS I64.  A new kit, Perl for OpenVMS V5.6.1-1A1, runs on OpenVMS I64 Version 8.2 and higher.  The existing Perl for OpenVMS Version 5.6.1 kit runs on OpenVMS Alpha Version 7.3-1 and higher (including OpenVMS Alpha Version 8.2 and higher).

Software Prerequisites

OpenVMS Alpha Version 7.3-1 or higher   -OR-
         OpenVMS I64 Version 8.2 and higher

For Alpha Only: Apply the Perl 5.6.1 ECO 3 kit (CPQ-AXPVMS-PERL561_UPDATE-V0300--4.PCSI-DCX-AXPEXE) if you want to use Perl 5.6.1 with the Secure Web Server Version 2.0 and CSWS_PERL Version 2.0 on OpenVMS Alpha.

Perl runs with the Secure Web Server for OpenVMS via CSWS_PERL. You can also use Perl in a standalone mode through the command line.  You do not need to install the Secure Web Server for OpenVMS nor CSWS_PERL to use Perl for OpenVMS.

Documentation

For more information about Perl, see The Source for Perl at http://www.perl.com/ and Perl Mongers at http://www.perl.org/.

For a list of what has changed in the latest kit, see the PERL561.RELEASE_NOTES file in the Perl for OpenVMS kit. To view the file before you install the Perl kit, enter the following command:

    $ PRODUCT EXTRACT RELEASE_NOTES PERL

See the CSWS_PERL for HP Secure Web Server for OpenVMS Installation Guide and Release Notes for information about running CSWS_PERL with Perl and the Secure Web Server for OpenVMS.

Perl packages sometimes contain documentation information within the package. If the installed package includes documentation, you can view it by defining the following foreign command:

    $ PERLDOC :== $PERL_ROOT:[000000]PERL.EXE -

                   PERL_ROOT:[LIB.POD]PERLDOC.COM -t

For PERLDOC help, enter the following command:

    $ PERLDOC –h

Downloading the Kit

Perl for OpenVMS kits are available for download from http://www.hp.com/products/openvms/perl/

Expanding the Kit

To expand the Perl for OpenVMS self-extracting file, enter one of the following commands, depending on the kit you download:

    $ RUN CPQ-AXPVMS-PERL-V0506-1-1.PCSI-DCX-AXPEXE     ! for Alpha

    $ RUN HP-I64VMS-PERL-V0506-1A1-1.PCSI_SFX_I64EXE      ! for I64

The system expands the file and names the decompressed file CPQ-AXPVMS-PERL-V0506-1-1.PCSI or HP-I64VMS-PERL-V0506-1A1-1.PCSI. Do not rename this file.

Upgrading Perl from an Earlier Version

You can install a new Perl for OpenVMS kit over an existing version of Perl. Restart the Secure Web Server for the new Perl kit to take effect.

Important

If you install a new Perl kit to a different location from an earlier Perl kit using the /DESTINATION qualifier on the PRODUCT INSTALL command line, the new Perl kit will not work with the Secure Web Server unless you follow the steps below. This occurs because the CSWS_PERL for Secure Web Server kit (also known as mod_perl) adds extensions to Perl. Those extensions, and any user-added extensions, remain in the original location.

If you want to install a new Perl kit to a different location, follow these steps:

1.                   Save your CSWS_PERL configuration file (APACHE$COMMON:[CONF]MOD_PERL.CONF).

2.                   Make sure the PERL_ROOT logical name is pointing to the old Perl location.

3.                   Remove CSWS_PERL.

4.                   Install the new Perl kit to the new location.

5.                   Point the PERL_ROOT logical name to the new Perl location.

6.                   Re-install CSWS_PERL.

7.                   Re-install any user-installed Perl extensions.

8.                   Restore your CSWS_PERL configuration file.

Installing Perl for OpenVMS

To install the Perl for OpenVMS kit, enter the following command.

    $ PRODUCT INSTALL PERL

Note: Perl is not dependent on the Secure Web Server for OpenVMS installation and can reside anywhere on the system. The Secure Web Server uses the PERL_ROOT logical to locate Perl.

As the installation procedure progresses, the system displays information similar to the following:

    $ PRODUCT INSTALL PERL/DEST=DISK$DKA0:[000000]

 

    The following product has been selected:

    CPQ AXPVMS PERL V5.6.1               Layered Product

 

    Do you want to continue? [YES]

 

    Configuration phase starting ...

 

         You will be asked to choose options, if any, for each selected product
         and for any products that may be installed to satisfy software
         dependency requirements.

 

    CPQ AXPVMS PERL V5.6.1

 

            Hewlett Packard Company.

 

    * This product does not have any configuration options.

 

    Execution phase starting ...

 

        The following product will be installed to destination:
            CPQ AXPVMS PERL V5.6.1               DKB100:[000000.]
 
        Portion done: 0%..10%..20%..30%..40%..50%..60%..70%..80%..90%..100%
 
        The following product has been installed:
            
CPQ AXPVMS PERL V5.6.1               
Layered Product

 
        CPQ AXPVMS PERL V5.6.1

 

            Post-installation tasks are required.

 

    If you are running the Secure Web Server (CSWS) with Perl support,

    you must stop and restart the Apache server software to complete

    the installation:

 

            $ @SYS$STARTUP:APACHE$SHUTDOWN

            $ @SYS$STARTUP:APACHE$STARTUP


Post-Installation Tasks

1.                   Define the PERL_ROOT logical

In order for the Secure Web Server for OpenVMS software to use Perl (via CSWS_PERL), Perl must be made available to the server processes. Two logicals are required to locate this kit for the Secure Web Server. If no other versions of Perl are being used on this system, it is recommended that these logicals be defined systemwide. Otherwise, the logicals must be defined as either /GROUP or /JOB by the main server process.

The PERL_ROOT logical locates the top level directory of the Perl installation. It is rooted and must be a concealed logical.

For example:

    $ DEFINE/SYSTEM/EXEC/TRANSLATION=CONCEALED -

    _$ PERL_ROOT DKB100:[PERL5_006_01.]

2.                   Define the PERLSHR logical

Once the top level directory is defined, the Secure Web Server for OpenVMS requires access to the shareable image in this kit (PERLSHR.EXE). By default, OpenVMS looks in SYS$SHARE, but since this kit can be installed anywhere, this logical is necessary.

For example:

    $ DEFINE/SYSTEM/EXEC PERLSHR -

    _$ PERL_ROOT:[000000]PERLSHR.EXE

The Secure Web Server is now able to locate this installation of Perl.

3.                   Define the foreign command

Perl can also be used in a standalone mode without the Secure Web Server. To use Perl in this manner, define a foreign command to the Perl main image.

For example:

    $ PERL :== $PERL_ROOT:[000000]PERL.EXE

Perl scripts can then be executed from the command line by using this verb and the Perl script name as the parameter. Use the command "Perl -h" to see other options.

Removing Perl for OpenVMS

You can remove the Perl for OpenVMS kit by using the POLYCENTER Software Installation utility. To do so, enter the following command:

    $ PRODUCT REMOVE PERL

This command removes all files and directories created by this installation. Note that if you install Perl packages to extend the capabilities of Perl or create additional files in the installation area, PCSI will not have knowledge of these files and will not delete them. This will cause the directory structure to remain because the directories will not be completely empty. Some manual intervention may be needed to completely remove the kit.

Release Notes

This section contains notes on the current release of Perl for OpenVMS.

·                     Problem corrected in Perl Version 5.5-3A3 and Perl Version 5.6.1: SUBSYSTEM attribute added to a rights identifier

Perl Version 5.5-3A3 and Perl Version 5.6.1 correct a bug that occurred when you ran Perl from an account with the SUBSYSTEM attribute added to a rights identifier granted to that account. This bug put Perl into "taint" mode, but the method of doing so had some coding errors, which have been corrected.

·                     Problem corrected in Perl Version 5.5-3A3: Long environment variables caused process to exit from a buffer overflow

Perl Version 5.5-3A3 corrects a problem that occurred in Perl Version 5.5-3A2, whereby long environment variables caused the process to exit from a buffer overflow. (The Perl Version 5.5-3A2 hot fix saveset also corrects this problem.) This problem does not occur in Perl Version 5.6.1.

·                     Problem corrected in Perl Version 5.5-3A2: Environment variables exceeding 255 characters

CSWS_PERL uses logical names to contain environment variables used by Perl scripts. Previously, if the equivalence string for any logical name exceeded 255 characters, CSWS_PERL terminated with the following error in APACHE$ROOT:[LOGS]ERROR_LOG:

Fatal VMS error (status=340) at ROOT$:[PERL5_006_01]VMS.C;2

This error was most likely to occur if your browser transmits an HTTP_ACCEPT string that exceeds 255 characters.

This error has been corrected in Perl Version 5.5-3A2 and higher for OpenVMS. Environment variables can now contain up to 32,385 characters. If you have a version of Perl earlier than Version 5.5-3A2 installed, install the latest version, then reinstall CSWS_PERL to correct this problem.

·                     Tracking versions of Perl and CSWS_PERL

The CSWS_PERL and Perl kits are tightly connected. Future versions of Perl or CSWS_PERL may not interact correctly across version numbers. Perl for OpenVMS Version 5.6.1 ECO 3 works with CSWS_PERL Version 2.0. Perl for OpenVMS Version 5.6.1 works with CSWS_PERL Version 1.1. Perl Version 5.5-3A3 works with CSWS_PERL Versions 1.0-1 and 1.0.

·                     Multiple versions of Perl

You can run this Perl kit on the same system with other versions of Perl. If you choose to do this, be careful that the Secure Web Server software "sees" this version of Perl. Otherwise, your web based scripts will not operate correctly. The way the Secure Web Server sees Perl is through logical names. See Post-Installation Tasks for information about how to set these logical names.

·                     Perl example syntax

Some examples found in Perl manuals do not show the same syntax as that required by this version of Perl. HP recommends that you use the PERLDOC feature to display the help text (if available) to find the correct syntax.

·                     Perl-status location

Through the Secure Web Server, the "perl-status" location gives useful information about Perl and CSWS_PERL. Part of that wealth of information requires the Devel::Symdump Perl package to be installed. The Perl for OpenVMS kit does not contain that package. However, it can be obtained from CPAN via the web at: http://www.perl.com.