perlbs2000 (1)
Leading comments
Automatically generated by Pod::Man 4.09 (Pod::Simple 3.35) Standard preamble: ========================================================================
NAME
perlbs2000 - building and installing Perl for BS2000.This document needs to be updated, but we don't know what it should say. Please email comments to perlbug@perl.org <mailto:perlbug@perl.org>.
SYNOPSIS
This document will help you Configure, build, test and install Perl onDESCRIPTION
This is a ported perl for theYou may need the following
gzip on BS2000
We used version 1.2.4, which could be installed out of the box with
one failure during 'make check'.
bison on BS2000
The yacc coming with Unpacking Perl Distribution on BS2000
To extract an cd /usr/local/ascii export IO_CONVERSION=NO gunzip < /usr/local/src/perl.tar.gz | pax -r
You may ignore the error message for the first element of the archive (this doesn't look like a tar archive / skipping to next file...), it's only the directory which will be created automatically anyway.
After extracting the archive you copy the whole directory tree to your
cd /usr/local/src IO_CONVERSION=YES cp -r /usr/local/ascii/perl5.005_02 ./
Compiling Perl on BS2000
There is a ``hints'' file for Because of our problems with the native yacc we used
-----8<-----/usr/local/bin/yacc-----8<----- #! /usr/bin/sh
# Bison as a reentrant yacc:
# save parameters:
params="``
while [[ $# -gt 1 ]]; do
params=''$params $1"
shift
done
# add flag %pure_parser:
tmpfile=/tmp/bison.$$.y echo %pure_parser > $tmpfile cat $1 >> $tmpfile
# call bison:
echo ``/usr/local/bin/bison --yacc $params $1\t\t\t(Pure Parser)'' /usr/local/bin/bison --yacc $params $tmpfile
# cleanup:
rm -f $tmpfile -----8<----------8<-----
We still use the normal yacc for a2p.y though!!! We made a softlink called byacc to distinguish between the two versions:
ln -s /usr/bin/yacc /usr/local/bin/byacc
We build perl using
Testing Perl on BS2000
We still got a few errors during "make test". Some of them are the
result of using bison. Bison prints parser error instead of syntax
error, so we may ignore them. The following list shows
our errors, your results may differ:
op/numconvert.......FAILED tests 1409-1440 op/regexp...........FAILED tests 483, 496 op/regexp_noamp.....FAILED tests 483, 496 pragma/overload.....FAILED tests 152-153, 170-171 pragma/warnings.....FAILED tests 14, 82, 129, 155, 192, 205, 207 lib/bigfloat........FAILED tests 351-352, 355 lib/bigfltpm........FAILED tests 354-355, 358 lib/complex.........FAILED tests 267, 487 lib/dumper..........FAILED tests 43, 45 Failed 11/231 test scripts, 95.24% okay. 57/10595 subtests failed, 99.46% okay.
Installing Perl on BS2000
We have no nroff on Using Perl in the Posix-Shell of BS2000
: # use perl
eval 'exec /usr/local/bin/perl -S $0 ${1+``$@''}'
if $running_under_some_shell;
Using Perl in native BS2000
We don't have much experience with this yet, but try the following:
Copy your Perl executable to a
"bs2cp /usr/local/bin/perl 'bs2:perl(perl,l)'"
Now you can start it with the following (
"/START-PROG FROM-FILE=*MODULE(PERL,PERL),PROG-MODE=*ANY,RUN-MODE=*ADV"
First you get the
Floating point anomalies on BS2000
There appears to be a bug in the floating point implementation on
my $x = 100000.0; my $y = int($x * 1e-5) * 1e5; # '0' my $z = int($x / 1e+5) * 1e5; # '100000' print "\$y is $y and \$z is $z\n"; # $y is 0 and $z is 100000
Although one would expect the quantities $y and $z to be the same and equal to 100000 they will differ and instead will be 0 and 100000 respectively.
Using PerlIO and different encodings on ASCII and EBCDIC partitions
Since version 5.8 Perl uses the new PerlIO on
use Encode; open($f, ">:encoding(ascii)", "test.ascii"); print $f "Hello World!\n"; open($f, ">:encoding(posix-bc)", "test.ebcdic"); print $f "Hello World!\n"; open($f, ">:encoding(latin1)", "test.latin1"); print $f "Hello World!\n"; open($f, ">:encoding(utf8)", "test.utf8"); print $f "Hello World!\n";
to get two files containing ``Hello World!\n'' in
As the PerlIO layer uses raw
export IO_CONVERSION=YES export PERLIO=stdio
Now your
AUTHORS
Thomas DornerSEE ALSO
Mailing list
If you are interested in the z/OS (formerly known asSee also:
lists.perl.org/list/perl-mvs.html
There are web archives of the mailing list at:
www.xray.mpe.mpg.de/mailing-lists/perl-mvs archive.develooper.com/perl-mvs@perl.org
HISTORY
This document was originally written by Thomas Dorner for the 5.005 release of Perl.This document was podified for the 5.6 release of perl 11 July 2000.