perl
view release on metacpan or search on metacpan
README.os390 view on Meta::CPAN
character sets are different. See L<perlebcdic> for more on such character
set issues. Perl builtin functions that may behave differently under
EBCDIC are also mentioned in the perlport.pod document.
If you are having trouble with square brackets then consider switching your
rlogin or telnet client. Try to avoid older 3270 emulators and ISHELL for
working with Perl on USS.
=head2 Modules and Extensions for Perl on z/OS (Static Only)
Pure Perl (that is non XS) modules may be installed via the usual:
perl Makefile.PL
make
make test
make install
If you built perl with dynamic loading capability then that would also
be the way to build XS based extensions. However, if you built perl with
static linking you can still build XS based extensions for z/OS
but you will need to follow the instructions in ExtUtils::MakeMaker for
building statically linked perl binaries. In the simplest configurations
building a static perl + XS extension boils down to:
perl Makefile.PL
make
make perl
make test
make install
make -f Makefile.aperl inst_perl MAP_TARGET=perl
=head2 Running Perl on z/OS
To run the 64-bit Dynamic Perl environment, update your PATH and LIBPATH
to include the location you installed Perl into, and then run the perl you
installed as perlV.R.M where V/R/M is the Version/Release/Modification level
of the current development level.
If you are running the ASCII/EBCDIC Bi-Modal Perl environment, you also need to
set up your ASCII/EBCDIC Bi-Modal environment variables, and ensure any Perl
source code you run is tagged appropriately as ASCII or EBCDIC using
"chtag -t -c<CCSID>":
=over
=item For ASCII Only:
export _BPXK_AUTOCVT=ON
export _CEE_RUNOPTS="FILETAG(AUTOCVT,AUTOTAG),POSIX(ON)"
export _TAG_REDIR_ERR="txt"
export _TAG_REDIR_IN="txt"
export _TAG_REDIR_OUT="txt"
=item For ASCII or EBCDIC:
export PATH=/usr/local/perl/ascii:$PATH
export LIBPATH=/usr/local/perl/ascii/lib:$LIBPATH
perlV.R.M args
=back
If tcsh is your login shell then use the setenv command.
=head1 AUTHORS
David Fiander and Peter Prymmer with thanks to Dennis Longnecker
and William Raffloer for valuable reports, LPAR and PTF feedback.
Thanks to Mike MacIsaac and Egon Terwedow for SG24-5944-00.
Thanks to Ignasi Roca for pointing out the floating point problems.
Thanks to John Goodyear for dynamic loading help.
Mike Fulton and Karl Williamson have provided updates for UTF8, DLL, 64-bit and
ASCII/EBCDIC Bi-Modal support
=head1 OTHER SITES
L<https://github.com/ZOSOpenTools/perlport/> provides documentation and tools
for building various z/OS Perl configurations and has some useful tools in the
'bin' directory you may want to use for building z/OS Perl yourself.
=head1 HISTORY
Updated 24 December 2021 to enable initial ASCII support
Updated 03 October 2019 for perl-5.33.3+
Updated 28 November 2001 for broken URLs.
Updated 12 March 2001 to mention //'SYS1.TCPPARMS(TCPDATA)'.
Updated 24 January 2001 to mention dynamic loading.
Updated 15 January 2001 for the 5.7.1 release of Perl.
Updated 12 November 2000 for the 5.7.1 release of Perl.
This document was podified for the 5.005_03 release of Perl 11 March 1999.
This document was originally written by David Fiander for the 5.005
release of Perl.
=cut
( run in 0.675 second using v1.01-cache-2.11-cpan-39bf76dae61 )