.\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.16) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "PERLVMESA 1" .TH PERLVMESA 1 "2011-09-26" "perl v5.14.2" "Perl Programmers Reference Guide" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" README.vmesa \- building and installing Perl for VM/ESA. .SH "SYNOPSIS" .IX Header "SYNOPSIS" This document will help you Configure, build, test and install Perl on \s-1VM/ESA\s0. .SH "DESCRIPTION" .IX Header "DESCRIPTION" This is a fully ported perl for \s-1VM/ESA\s0 2.3.0. It may work on other versions, but that's the one we've tested it on. .PP If you've downloaded the binary distribution, it needs to be installed below /usr/local. Source code distributions have an automated \*(L"make install\*(R" step that means you do not need to extract the source code below /usr/local (though that is where it will be installed by default). You may need to worry about the networking configuration files discussed in the last bullet below. .SS "Unpacking Perl Distribution on \s-1VM/ESA\s0" .IX Subsection "Unpacking Perl Distribution on VM/ESA" To extract an \s-1ASCII\s0 tar archive on \s-1VM/ESA\s0, try this: .PP .Vb 1 \& pax \-o to=IBM\-1047,from=ISO8859\-1 \-r < latest.tar .Ve .SS "Setup Perl and utilities on \s-1VM/ESA\s0" .IX Subsection "Setup Perl and utilities on VM/ESA" \&\s-1GNU\s0 make for \s-1VM/ESA\s0, which may be required for the build of perl, is available from: .PP .SS "Configure Perl on \s-1VM/ESA\s0" .IX Subsection "Configure Perl on VM/ESA" Once you've unpacked the distribution, run Configure (see \s-1INSTALL\s0 for full discussion of the Configure options), and then run make, then \&\*(L"make test\*(R" then \*(L"make install\*(R" (this last step may require UID=0 privileges). .PP There is a \*(L"hints\*(R" file for vmesa that specifies the correct values for most things. Some things to watch out for are: .IP "\(bu" 4 this port does support dynamic loading but it's not had much testing .IP "\(bu" 4 Don't turn on the compiler optimization flag \*(L"\-O\*(R". There's a bug in the compiler (\s-1APAR\s0 \s-1PQ18812\s0) that generates some bad code the optimizer is on. .IP "\(bu" 4 As \s-1VM/ESA\s0 doesn't fully support the \fIfork()\fR \s-1API\s0 programs relying on this call will not work. I've replaced \fIfork()\fR/\fIexec()\fR with \fIspawn()\fR and the standalone \fIexec()\fR with \fIspawn()\fR. This has a side effect when opening unnamed pipes in a shell script: there is no child process generated under. .IP "\(bu" 4 At the moment the hints file for \s-1VM/ESA\s0 basically bypasses all of the automatic configuration process. This is because Configure relies on: 1. The header files living in the Byte File System (you could put the there if you want); 2. The C preprocessor including the #include statements in the preprocessor output (.i) file. .SS "Testing Anomalies of Perl on \s-1VM/ESA\s0" .IX Subsection "Testing Anomalies of Perl on VM/ESA" The \*(L"make test\*(R" step runs a Perl Verification Procedure, usually before installation. As the 5.6.1 kit was being assembled the following \*(L"failures\*(R" were known to appear on some machines during \*(L"make test\*(R" (mostly due to \s-1ASCII\s0 vs. \s-1EBCDIC\s0 conflicts), your results may differ: .PP [the list of failures being compiled] .SS "Usage Hints for Perl on \s-1VM/ESA\s0" .IX Subsection "Usage Hints for Perl on VM/ESA" When using perl on \s-1VM/ESA\s0 please keep in mind that the \s-1EBCDIC\s0 and \s-1ASCII\s0 character sets are different. Perl builtin functions that may behave differently under \s-1EBCDIC\s0 are mentioned in the perlport.pod document. .PP OpenEdition (\s-1UNIX\s0 System Services) does not (yet) support the #! means of script invocation. See: .PP .Vb 1 \& head \`whence perldoc\` .Ve .PP for an example of how to use the \*(L"eval exec\*(R" trick to ask the shell to have perl run your scripts for you. .SH "AUTHORS" .IX Header "AUTHORS" Neale Ferguson. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\s-1INSTALL\s0, perlport, perlebcdic. .SS "Mailing list for Perl on \s-1VM/ESA\s0" .IX Subsection "Mailing list for Perl on VM/ESA" If you are interested in the \s-1VM/ESA\s0, z/OS (formerly known as \s-1OS/390\s0) and POSIX-BC (\s-1BS2000\s0) ports of Perl then see the perl-mvs mailing list. To subscribe, send an empty message to perl\-mvs\-subscribe@perl.org. .PP See also: .PP http://lists.perl.org/showlist.cgi?name=perl\-mvs .PP There are web archives of the mailing list at: .IP "\(bu" 4 http://www.xray.mpe.mpg.de/mailing\-lists/perl\-mvs/ .IP "\(bu" 4 http://archive.develooper.com/perl\-mvs@perl.org/