[3181] | 1 |
|
---|
| 2 | This document is written in pod format hence there are punctuation
|
---|
| 3 | characters in odd places. Do not worry, you've apparently got
|
---|
| 4 | the ASCII->EBCDIC translation worked out correctly. You can read
|
---|
| 5 | more about pod in pod/perlpod.pod or the short summary in the
|
---|
| 6 | INSTALL file.
|
---|
| 7 |
|
---|
| 8 | =head1 NAME
|
---|
| 9 |
|
---|
| 10 | README.vmesa - building and installing Perl for VM/ESA.
|
---|
| 11 |
|
---|
| 12 | =head1 SYNOPSIS
|
---|
| 13 |
|
---|
| 14 | This document will help you Configure, build, test and install Perl
|
---|
| 15 | on VM/ESA.
|
---|
| 16 |
|
---|
| 17 | =head1 DESCRIPTION
|
---|
| 18 |
|
---|
| 19 | This is a fully ported perl for VM/ESA 2.3.0. It may work on
|
---|
| 20 | other versions, but that's the one we've tested it on.
|
---|
| 21 |
|
---|
| 22 | If you've downloaded the binary distribution, it needs to be
|
---|
| 23 | installed below /usr/local. Source code distributions have an
|
---|
| 24 | automated "make install" step that means you do not need to extract
|
---|
| 25 | the source code below /usr/local (though that is where it will be
|
---|
| 26 | installed by default). You may need to worry about the networking
|
---|
| 27 | configuration files discussed in the last bullet below.
|
---|
| 28 |
|
---|
| 29 | =head2 Unpacking Perl Distribution on VM/ESA
|
---|
| 30 |
|
---|
| 31 | To extract an ASCII tar archive on VM/ESA, try this:
|
---|
| 32 |
|
---|
| 33 | pax -o to=IBM-1047,from=ISO8859-1 -r < latest.tar
|
---|
| 34 |
|
---|
| 35 | =head2 Setup Perl and utilities on VM/ESA
|
---|
| 36 |
|
---|
| 37 | GNU make for VM/ESA, which may be required for the build of perl,
|
---|
| 38 | is available from:
|
---|
| 39 |
|
---|
| 40 | http://vm.marist.edu/~neale/vmoe.html
|
---|
| 41 |
|
---|
| 42 | =head2 Configure Perl on VM/ESA
|
---|
| 43 |
|
---|
| 44 | Once you've unpacked the distribution, run Configure (see INSTALL for
|
---|
| 45 | full discussion of the Configure options), and then run make, then
|
---|
| 46 | "make test" then "make install" (this last step may require UID=0
|
---|
| 47 | privileges).
|
---|
| 48 |
|
---|
| 49 | There is a "hints" file for vmesa that specifies the correct values
|
---|
| 50 | for most things. Some things to watch out for are:
|
---|
| 51 |
|
---|
| 52 | =over 4
|
---|
| 53 |
|
---|
| 54 | =item *
|
---|
| 55 |
|
---|
| 56 | this port does support dynamic loading but it's not had much testing
|
---|
| 57 |
|
---|
| 58 | =item *
|
---|
| 59 |
|
---|
| 60 | Don't turn on the compiler optimization flag "-O". There's
|
---|
| 61 | a bug in the compiler (APAR PQ18812) that generates some bad code
|
---|
| 62 | the optimizer is on.
|
---|
| 63 |
|
---|
| 64 | =item *
|
---|
| 65 |
|
---|
| 66 | As VM/ESA doesn't fully support the fork() API programs relying on
|
---|
| 67 | this call will not work. I've replaced fork()/exec() with spawn()
|
---|
| 68 | and the standalone exec() with spawn(). This has a side effect when
|
---|
| 69 | opening unnamed pipes in a shell script: there is no child process
|
---|
| 70 | generated under.
|
---|
| 71 |
|
---|
| 72 | =item *
|
---|
| 73 |
|
---|
| 74 | At the moment the hints file for VM/ESA basically bypasses all of the
|
---|
| 75 | automatic configuration process. This is because Configure relies on:
|
---|
| 76 | 1. The header files living in the Byte File System (you could put the
|
---|
| 77 | there if you want); 2. The C preprocessor including the #include
|
---|
| 78 | statements in the preprocessor output (.i) file.
|
---|
| 79 |
|
---|
| 80 | =back
|
---|
| 81 |
|
---|
| 82 | =head2 Testing Anomalies of Perl on VM/ESA
|
---|
| 83 |
|
---|
| 84 | The "make test" step runs a Perl Verification Procedure, usually before
|
---|
| 85 | installation. As the 5.6.1 kit was being assembled
|
---|
| 86 | the following "failures" were known to appear on some machines
|
---|
| 87 | during "make test" (mostly due to ASCII vs. EBCDIC conflicts),
|
---|
| 88 | your results may differ:
|
---|
| 89 |
|
---|
| 90 | [the list of failures being compiled]
|
---|
| 91 |
|
---|
| 92 | =head2 Usage Hints for Perl on VM/ESA
|
---|
| 93 |
|
---|
| 94 | When using perl on VM/ESA please keep in mind that the EBCDIC and ASCII
|
---|
| 95 | character sets are different. Perl builtin functions that may behave
|
---|
| 96 | differently under EBCDIC are mentioned in the perlport.pod document.
|
---|
| 97 |
|
---|
| 98 | OpenEdition (UNIX System Services) does not (yet) support the #! means
|
---|
| 99 | of script invocation.
|
---|
| 100 | See:
|
---|
| 101 |
|
---|
| 102 | head `whence perldoc`
|
---|
| 103 |
|
---|
| 104 | for an example of how to use the "eval exec" trick to ask the shell to
|
---|
| 105 | have perl run your scripts for you.
|
---|
| 106 |
|
---|
| 107 | =head1 AUTHORS
|
---|
| 108 |
|
---|
| 109 | Neale Ferguson.
|
---|
| 110 |
|
---|
| 111 | =head1 SEE ALSO
|
---|
| 112 |
|
---|
| 113 | L<INSTALL>, L<perlport>, L<perlebcdic>.
|
---|
| 114 |
|
---|
| 115 | =head2 Mailing list for Perl on VM/ESA
|
---|
| 116 |
|
---|
| 117 | If you are interested in the VM/ESA, z/OS (formerly known as OS/390)
|
---|
| 118 | and POSIX-BC (BS2000) ports of Perl then see the perl-mvs mailing list.
|
---|
| 119 | To subscribe, send an empty message to perl-mvs-subscribe@perl.org.
|
---|
| 120 |
|
---|
| 121 | See also:
|
---|
| 122 |
|
---|
| 123 | http://lists.perl.org/showlist.cgi?name=perl-mvs
|
---|
| 124 |
|
---|
| 125 | There are web archives of the mailing list at:
|
---|
| 126 |
|
---|
| 127 | http://www.xray.mpe.mpg.de/mailing-lists/perl-mvs/
|
---|
| 128 | http://archive.develooper.com/perl-mvs@perl.org/
|
---|
| 129 |
|
---|
| 130 | =cut
|
---|
| 131 |
|
---|