[14544] | 1 | |
---|
[17034] | 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 | |
---|
[14544] | 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 | |
---|
[17034] | 29 | =head2 Unpacking |
---|
| 30 | |
---|
[14544] | 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 | |
---|
[17034] | 35 | =head2 Setup and utilities |
---|
| 36 | |
---|
[14544] | 37 | GNU make for VM/ESA, which may be required for the build of perl, |
---|
| 38 | is available from: |
---|
| 39 | |
---|
| 40 | http://pucc.princeton.edu/~neale/vmoe.html |
---|
| 41 | |
---|
[17034] | 42 | =head2 Configure |
---|
| 43 | |
---|
[14544] | 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 |
---|
[17034] | 47 | privileges). |
---|
[14544] | 48 | |
---|
| 49 | There is a "hints" file for vmesa that specifies the correct values |
---|
[17034] | 50 | for most things. Some things to watch out for are: |
---|
[14544] | 51 | |
---|
[17034] | 52 | =over 4 |
---|
[14544] | 53 | |
---|
[17034] | 54 | =item * |
---|
[14544] | 55 | |
---|
[17034] | 56 | this port does support dynamic loading but it's not had much testing |
---|
[14544] | 57 | |
---|
[17034] | 58 | =item * |
---|
[14544] | 59 | |
---|
[17034] | 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 |
---|
| 83 | |
---|
| 84 | The `make test` step runs a Perl Verification Procedure, usually before |
---|
| 85 | installation. As the 5.6.1 kit was 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 |
---|
| 93 | |
---|
[14544] | 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 |
---|
[17034] | 99 | of script invocation. |
---|
[14544] | 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 | |
---|
[17034] | 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 |
---|
| 116 | |
---|
[14544] | 117 | If you are interested in the VM and OS/390 ports of perl then see the |
---|
| 118 | perl-mvs mailing list: The Perl Institute (http://www.perl.org/) |
---|
| 119 | maintains a mailing list of interest to all folks building and/or |
---|
[17034] | 120 | using perl on EBCDIC platforms. To subscribe, send a message of: |
---|
[14544] | 121 | |
---|
| 122 | subscribe perl-mvs |
---|
| 123 | |
---|
| 124 | to majordomo@perl.org. |
---|
| 125 | |
---|
[17034] | 126 | See also: |
---|
[14544] | 127 | |
---|
[17034] | 128 | http://lists.perl.org/showlist.cgi?name=perl-mvs |
---|
| 129 | |
---|
| 130 | There are web archives of the mailing list at: |
---|
| 131 | |
---|
| 132 | http://www.xray.mpe.mpg.de/mailing-lists/perl-mvs/ |
---|
| 133 | http://archive.develooper.com/perl-mvs@perl.org/ |
---|
| 134 | |
---|
| 135 | =cut |
---|
| 136 | |
---|