Index of Section 1 Manual Pages

Interix / SUAperlvos.1Interix / SUA

PERLVOS(1)       Perl Programmers Reference Guide      PERLVOS(1)



NAME
       README.vos - Perl for Stratus VOS

SYNOPSIS
       This file contains notes for building perl on the Stratus
       VOS operating system.  Perl is a scripting or macro lan-
       guage that is popular on many systems.  See perlbook for a
       number of good books on Perl.

       These are instructions for building Perl from source.
       Most people can simply download a pre-compiled distribu-
       tion from the VOS anonymous FTP site.  If you are running
       VOS Release 14.2.0 or earlier, download Perl from
       ftp://ftp.stratus.com/pub/vos/posix/alpha/alpha.html  If
       you are running VOS Release 14.3.0 or later, download Perl
       from ftp://ftp.stratus.com/pub/vos/posix/ga/ga.html
       Instructions for unbundling the Perl distribution file are
       at ftp://ftp.stratus.com/pub/vos/utility/utility.html

       If you are running VOS Release 14.4.1 or later, you can
       obtain a pre-compiled, supported copy of perl by purchas-
       ing Release 2.0.1 (or later) of the VOS GNU C++ and GNU
       Tools product from Stratus Technologies.

       Multiple methods to build perl for VOS

       If you elect to build perl from its source code, you have
       several different ways that you can build perl.  The
       method that you use depends on the version of VOS that you
       are using and on the architecture of your Stratus hardware
       platform.

       1    If you have a Stratus XA2000 (Motorola 68k-based)
            platform, you must build perl using the alpha version
            of VOS POSIX support and using the VOS Standard C
            Cross-compiler.  You must build perl on VOS Release
            14.1.0 (or later) on an XA/R or Continuum platform.

            This version of perl is properly called "miniperl"
            because it does not contain the complete perl func-
            tionality.

            You must build perl with the compile_perl.cm command
            macro found in the vos subdirectory.

       2    If you have a Stratus XA/R (Intel i860-based) plat-
            form, you must build perl using the alpha version of
            VOS POSIX support and using the VOS Standard C com-
            piler or cross-compiler.  You must build perl on VOS
            Release 14.1.0 (or later) on an XA/R or Continuum
            platform.

            This version of perl is properly called "miniperl"
            because it does not contain the complete perl func-
            tionality.

            You must build perl with the compile_perl.cm command
            macro found in the vos subdirectory.

       3    If you have a Stratus Continuum (PA-RISC-based) plat-
            form that is running a version of VOS earlier than
            VOS 14.3.0, you must build perl using the alpha
            version of VOS POSIX support and using the VOS Stan-
            dard C compiler or cross-compiler.  You must build
            perl on VOS Release 14.1.0 (or later) on an XA/R or
            Continuum platform.

            This version of perl is properly called "miniperl"
            because it does not contain the complete perl func-
            tionality.

            You must build perl with the compile_perl.cm command
            macro found in the vos subdirectory.

       4    If you have a Stratus Continuum (PA-RISC-based) plat-
            form that is running VOS Release 14.3.0 through VOS
            Release 14.4.1, you must build perl using the gener-
            ally-available version of VOS POSIX support, and
            using either the VOS Standard C compiler or the VOS
            GNU C compiler.  You must build perl on VOS Release
            14.3.0 (or later) on a Continuum platform.

            This version of perl is properly called "miniperl"
            because it does not contain the complete perl func-
            tionality.

            You must build perl with the compile_perl.cm command
            macro found in the vos subdirectory.

       5    If you have a Stratus Continuum (PA-RISC-based) plat-
            form that is running VOS Release 14.5.0 or later, you
            can either use the previous method to build
            "miniperl" or you can build "full perl", which con-
            tains the complete functionality of perl.  I strongly
            recommend that you build full perl.  To build full
            perl, you must use the generally-available version of
            VOS POSIX support.  You must use the VOS GNU C com-
            piler and the VOS GNU C/C++ and GNU Tools Release
            2.0.1 (or later) product.  You must build full perl
            on VOS Release 14.5.0 (or later) on a Continuum plat-
            form.

            You must build full perl with the com-
            pile_full_perl.cm command macro found in the vos sub-
            directory.

       Stratus POSIX Support

       Note that there are two different implementations of
       POSIX.1 support on VOS.  There is an alpha version of
       POSIX that is available from the Stratus anonymous ftp
       site ( ftp://ftp.stra-
       tus.com/pub/vos/posix/alpha/alpha.html ).  There is a gen-
       erally-available version of POSIX that comes with VOS
       Release 14.3.0 or higher.  This port of POSIX will compile
       and bind with either version of POSIX.

       Most of the Perl features should work on VOS regardless of
       which version of POSIX that you are using.  However, the
       alpha version of POSIX is missing a number of key func-
       tions, and therefore any attempt by perl.pm to call the
       following unimplemented POSIX functions will result in an
       error message and an immediate and fatal call to the VOS
       debugger.  They are "dup", "fork", and "waitpid".  The
       lack of these functions prevents you from starting VOS
       commands and grabbing their output in perl.  The
       workaround is to run the commands outside of perl, then
       have perl process the output file.  These functions are
       all available in the generally-available version of POSIX.

INSTALLING PERL IN VOS
       Compiling Perl 5 on VOS

       Before you can build Perl 5 on VOS, you need to have or
       acquire the following additional items.

       1    The VOS Standard C Compiler (or the VOS Standard C
            Cross-Compiler) and the VOS C Runtime.  If you are
            using the generally-available version of POSIX sup-
            port, you may instead use the VOS GNU C/C++ Compiler.
            These are standard Stratus products.

       2    Either the VOS OS TCP/IP or STCP product set.  If you
            are building with the alpha version of POSIX you need
            the OS TCP/IP product set.  If you are building with
            the generally-available version of POSIX you need the
            STCP product set.  These are standard Stratus prod-
            ucts.

       3    Either the alpha or generally-available version of
            the VOS POSIX.1 environment.

            The alpha version of POSIX.1 support is available on
            the Stratus FTP site.  Login anonymously to ftp.stra-
            tus.com and get the file
            /pub/vos/posix/alpha/posix.save.evf.gz in binary
            file-transfer mode.  Or use the Uniform Resource
            Locator (URL) ftp://ftp.stra-
            tus.com/pub/vos/posix/alpha/posix.save.evf.gz from
            your web browser.  Instructions for unbundling this
            file are at ftp://ftp.stratus.com/pub/vos/util-
            ity/utility.html This is NOT a standard Stratus prod-
            uct.

            In VOS Release 14.3.0, the generally-available ver-
            sion of POSIX.1 support is bundled with the VOS Stan-
            dard C compiler (or Standard C Cross-Compiler).  In
            VOS Release 14.4.0 or higher, it is also bundled with
            the VOS C Runtime.  These are standard Stratus prod-
            ucts.

       4    You must compile this version of Perl 5 on VOS
            Release 14.1.0 or higher because some of the perl
            source files contain more than 32,767 source lines.
            Due to VOS release-compatibility rules, this port of
            perl may not execute on VOS Release 12 or earlier.

       5    If you are using the generally-available version of
            VOS POSIX support, then you should also acquire the
            VOS GNU C/C++ Compiler and GNU Tools product.  When
            perl is built with this version of POSIX support, it
            assumes that it can find "bash", "sed" and other
            POSIX-compatible commands in the directory /sys-
            tem/gnu_library/bin.

       To build perl using the supplied VOS command macros,
       change to the "vos" subdirectory and type the command
       "compile_perl -processor X", where X is the processor type
       (mc68020, i80860, pa7100, pa8000) that you wish to use.
       Note that the generally-available version of POSIX.1 sup-
       port is not available for the mc68020 or i80860 proces-
       sors.

       Use the "-version alpha" control argument to build perl
       with the alpha version of POSIX support, and use the
       "-version ga" control argument to build it with the gener-
       ally-available version of POSIX.  The default is "ga".

       Use the "-compiler cc" control argument to build perl with
       the VOS Standard C compiler.  Use the "-compiler gcc" con-
       trol argument to build it with the GNU GCC compiler.  The
       default is "cc".

       You must have purchased the VOS Standard C Cross Compiler
       in order to compile perl for a processor type that is dif-
       ferent from the processor type of the module.

       Note that code compiled for the pa7100 processor type can
       execute on the PA7100, PA8000, PA8500 and PA8600 proces-
       sors, and that code compiled for the pa8000 processor type
       can execute on the PA8000, PA8500 and PA8600 processors.

       To build full perl using the supplied Configure script and
       makefiles, change to the "vos" subdirectory and type the
       command "compile_full_perl" or "start_process com-
       pile_full_perl".  This will configure, build, and test
       perl.

       Installing Perl 5 on VOS


       1   If you have built perl using the Configure script,
           ensure that you have modify permission to ">sys-
           tem>ported" and type

                gmake install

       2   If you have built perl using any of the other methods,
           type

                install_perl -processor PROCESSOR -name NAME

           where PROCESSOR is mc68020, i80860, pa7100, or pa8000,
           as appropriate, and NAME is perl or perl5, according
           to which name you wish to use.

           This command macro will install perl and all of its
           related files in the proper directories.

       3   While there are currently no architecture-specific
           extensions or modules distributed with perl, the fol-
           lowing directories can be used to hold such files:

                >system>ported>lib>perl5>5.8.0>68k
                >system>ported>lib>perl5>5.8.0>860
                >system>ported>lib>perl5>5.8.0>7100
                >system>ported>lib>perl5>5.8.0>8000

       4   Site-specific perl extensions and modules can be
           installed in one of two places.  Put architecture-
           independent files into:

                >system>ported>lib>perl5>site_perl>5.8.0

           Put site-specific architecture-dependent files into
           one of the following directories:




                >system>ported>lib>perl5>site_perl>5.8.0>68k
                >system>ported>lib>perl5>site_perl>5.8.0>860
                >system>ported>lib>perl5>site_perl>5.8.0>7100
                >system>ported>lib>perl5>site_perl>5.8.0>8000

       5   You can examine the @INC variable from within a perl
           program to see the order in which Perl searches these
           directories.

USING PERL IN VOS
       Unimplemented Features of Perl on VOS

       If perl is built with the alpha version of VOS POSIX.1
       support and if it attempts to call an unimplemented VOS
       POSIX.1 function, it will print a fatal error message and
       enter the VOS debugger.  This error is not recoverable.
       See vos_dummies.c for a list of the unimplemented POSIX.1
       functions.  To see what functions are unimplemented and
       what the error message looks like, compile and execute
       "test_vos_dummies.c".

       Restrictions of Perl on VOS

       This port of Perl version 5 to VOS prefers Unix-style,
       slash-separated pathnames over VOS-style greater-than-sep-
       arated pathnames.  VOS-style pathnames should work in most
       contexts, but if you have trouble, replace all greater-
       than characters by slash characters.  Because the slash
       character is used as a pathname delimiter, Perl cannot
       process VOS pathnames containing a slash character in a
       directory or file name; these must be renamed.

       This port of Perl also uses Unix-epoch date values inter-
       nally.  As long as you are dealing with ASCII character
       string representations of dates, this should not be an
       issue.  The supported epoch is January 1, 1980 to January
       17, 2038.

       See the file pod/perlport.pod for more information about
       the VOS port of Perl.

       Handling of underflow and overflow

       Prior to VOS Release 14.7.0, VOS does not support automat-
       ically mapping overflowed floating-point values to +infin-
       ity, nor automatically mapping underflowed floating-point
       values to zero, unlike many other platforms.  The Perl
       pack function has been modified to perform such mapping in
       software on VOS.  Performing other floating-point computa-
       tions that underflow or overflow will probably result in
       SIGFPE.  Don't push your luck.

       As of VOS Release 14.7.0, the VOS POSIX runtime sets up
       the PA-RISC hardware floating-point status register so
       that the overflow and underflow exceptions do not trap,
       but instead automatically convert the result to infinity
       or zero, as appropriate.  As of this writing, there are
       still floating-point operations that can trap, for exam-
       ple, subtracting two infinite values.  This is recorded as
       suggestion posix-1022, which is not yet fixed.

TEST STATUS
       When Perl 5.8.3 is built using the native build process on
       VOS Release 14.7.0 and GNU C++/GNU Tools 2.0.2a, all but
       three attempted tests either pass or result in TODO
       (ignored) failures.  The tests that fail are:

       t/io/tell.t, test 28 t/op/pack.t, test 39
       lib/Net/ing/t/450_service.t, test 8

SUPPORT STATUS
       I'm offering this port "as is".  You can ask me questions,
       but I can't guarantee I'll be able to answer them.  There
       are some excellent books available on the Perl language;
       consult a book seller.

       If you want a supported version of perl for VOS, purchase
       the VOS GNU C++ and GNU Tools Release 2.0.1 (or later)
       product from Stratus Technologies, along with a support
       contract (or from anyone else who will sell you support).

AUTHOR
       Paul Green (Paul.Green@stratus.com)

LAST UPDATE
       January 15, 2004



perl v5.8.8                 2006-01-07                 PERLVOS(1)

Interix / SUAHosted at SUA Community for Interix, SUA and SFUInterix / SUA