-
This document is written in pod format hence there are punctuation
-characters in odd places. Do not worry, you've apparently got
-the ASCII->EBCDIC translation worked out correctly. You can read
-more about pod in pod/perlpod.pod or the short summary in the
-INSTALL file.
+characters in odd places. Do not worry, you've apparently got the
+ASCII->EBCDIC translation worked out correctly. You can read more
+about pod in pod/perlpod.pod or the short summary in the INSTALL file.
=head1 NAME
-README.os390 - building and installing Perl for OS/390.
+README.os390 - building and installing Perl for OS/390 and z/OS
=head1 SYNOPSIS
This document will help you Configure, build, test and install Perl
-on OS/390 Unix System Services.
+on OS/390 (aka z/OS) Unix System Services.
=head1 DESCRIPTION
You may need to carry out some system configuration tasks before
running the Configure script for Perl.
-=head2 Unpacking
+
+=head2 Tools
+
+The z/OS Unix Tools and Toys list may prove helpful and contains links
+to ports of much of the software helpful for building Perl.
+http://www-1.ibm.com/servers/eserver/zseries/zos/unix/bpxa1toy.html
+
+
+=head2 Unpacking Perl distribution on OS/390
Gunzip/gzip for OS/390 is discussed at:
- http://www.s390.ibm.com/products/oe/bpxqp1.html
+ http://www-1.ibm.com/servers/eserver/zseries/zos/unix/faq/bpxqp1.html
to extract an ASCII tar archive on OS/390, try this:
pax -o to=IBM-1047,from=ISO8859-1 -r < latest.tar
-=head2 Setup and utilities
+If you get errors of the form
+
+ tar: FSUM7171 ...: cannot set uid/gid: EDC5139I Operation not permitted.
+ tar: FSUM7148 cannot create file "...": EDC5111I Permission denied.
+
+you didn't read the above and tried to use tar instead of pax.
+
+=head2 Setup and utilities for Perl on OS/390
Be sure that your yacc installation is in place including any necessary
parser template files. If you have not already done so then be sure to:
SC28-1890-07 "OS/390 UNIX System Services Planning", in particular
Chapter 6 on customizing the OE shell.
-GNU make for OS/390, which is recommended for the build of perl (as well as
-building CPAN modules and extensions), is available from:
-
- http://www.mks.com/s390/gnu/index.htm
+GNU make for OS/390, which is recommended for the build of perl (as
+well as building CPAN modules and extensions), is available from the
+L</Tools>.
Some people have reported encountering "Out of memory!" errors while
trying to build Perl using GNU make binaries. If you encounter such
For successful testing you may need to turn on the sticky bit for your
world readable /tmp directory if you have not already done so (see man chmod).
-=head2 Configure
+=head2 Configure Perl on OS/390
Once you've unpacked the distribution, run "sh Configure" (see INSTALL
for a full discussion of the Configure options). There is a "hints" file
=back
-=head2 Build, test, install
+=head2 Build, Test, Install Perl on OS/390
Simply put:
on how you answered the questions that Configure asked and whether
or not you have write access to the directories you specified.
-=head2 build anomalies
+=head2 Build Anomalies with Perl on OS/390
"Out of memory!" messages during the build of Perl are most often fixed
by re building the GNU make utility for OS/390 from a source code kit.
Socket extension then be sure to fix the syntax error in the system
header /usr/include/sys/socket.h.
-=head2 testing anomalies
+=head2 Testing Anomalies with Perl on OS/390
The `make test` step runs a Perl Verification Procedure, usually before
installation. You might encounter STDERR messages even during a successful
Recent perl test suite is quite memory hunrgy. In addition to the comments
above on memory limitations it is also worth checking for _CEE_RUNOPTS
in your environment. Perl now has (in miniperlmain.c) a C #pragma
-to set CEE run options, but the enviroment variable wins.
+to set CEE run options, but the environment variable wins.
-The C code ask for:
+The C code asks for:
#pragma runopts(HEAP(2M,500K,ANYWHERE,KEEP,8K,4K) STACK(,,ANY,) ALL31(ON))
The important parts of that are the second argument (the increment) to HEAP,
and allowing the stack to be "Above the (16M) line". If the heap
-increment is too small then when perl (for example loading unicode/Name.pl) trys
-to create a "big" (400K+) string it cannot fit in a single segement
+increment is too small then when perl (for example loading unicode/Name.pl) tries
+to create a "big" (400K+) string it cannot fit in a single segment
and you get "Out of Memory!" - even if there is still plenty of memory
available.
=back
-=head2 installation anomalies
+=head2 Installation Anomalies with Perl on OS/390
The installman script will try to run on OS/390. There will be fewer errors
if you have a roff utility installed. You can obtain GNU groff from the
Redbook SG24-5944-00 ftp site.
-=head2 Usage Hints
+=head2 Usage Hints for Perl on OS/390
When using perl on OS/390 please keep in mind that the EBCDIC and ASCII
character sets are different. See perlebcdic.pod for more on such character
rlogin or telnet client. Try to avoid older 3270 emulators and ISHELL for
working with Perl on USS.
-=head2 Floating point anomalies
+=head2 Floating Point Anomalies with Perl on OS/390
There appears to be a bug in the floating point implementation on S/390
systems such that calling int() on the product of a number and a small
/* y is 0.000000e+00 and z is 1.000000e+05 (with c89) */
}
-=head2 Modules and Extensions
+=head2 Modules and Extensions for Perl on OS/390
Pure pure (that is non xs) modules may be installed via the usual:
L<INSTALL>, L<perlport>, L<perlebcdic>, L<ExtUtils::MakeMaker>.
- http://www.mks.com/s390/gnu/index.htm
+ http://www-1.ibm.com/servers/eserver/zseries/zos/unix/bpxa1toy.html
http://www.redbooks.ibm.com/abstracts/sg245944.html
- http://www.s390.ibm.com/products/oe/bpxa1ty1.html#opensrc
-
- http://www.s390.ibm.com/products/oe/portbk/bpxacenv.html
+ http://www-1.ibm.com/servers/eserver/zseries/zos/unix/bpxa1ty1.html#opensrc
http://www.xray.mpe.mpg.de/mailing-lists/perl-mvs/
http://publibz.boulder.ibm.com:80/cgi-bin/bookmgr_OS390/BOOKS/CBCUG030/
-=head2 Mailing list
+=head2 Mailing list for Perl on OS/390
The Perl Institute (http://www.perl.org/) maintains a perl-mvs
mailing list of interest to all folks building and/or
This document was podified for the 5.005_03 release of Perl 11 March 1999.
+Updated 28 November 2001 for broken URLs.
+
Updated 12 November 2000 for the 5.7.1 release of Perl.
Updated 15 January 2001 for the 5.7.1 release of Perl.