This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
support OE/MVS
[perl5.git] / README.os390
CommitLineData
9d116dd7
JH
1This is a fully ported perl for OS/390 Release 3. It may work on
2other versions, but that's the one we've tested it on.
3
4If you've downloaded the binary distribution, it needs to be
5installed below /usr/local. Source code distributions have an
6automated `make install` step that means you do not need to extract
7the source code below /usr/local (though that is where it will be
8installed by default). You may need to worry about the networking
9configuration files discussed in the last bullet below.
10
11Gunzip/gzip for OS/390 is discussed at:
12
13 http://www.s390.ibm.com/products/oe/bpxqp1.html
14
15to extract an ASCII tar archive on OS/390, try this:
16
17 pax -o to=IBM-1047,from=ISO8859-1 -r < latest.tar
18
19GNU make for OS/390, which may be required for the build of perl,
20is available from:
21
22 http://www.mks.com/s390/gnu/index.htm
23
24Once you've unpacked the distribution, run Configure (see INSTALL for
25full discussion of the Configure options), and then run make, then
26"make test" then "make install" (this last step may require UID=0
27privileges)
28
29There is a "hints" file for os390 that specifies the correct values
30for most things. Some things to watch out for are
31
32 - this port doesn't support dynamic loading. Although
33 OS/390 has support for DLLs, there are some differences
34 that cause problems for perl.
35
36 - You may see a "WHOA THERE!!!" message for $d_shmatprototype
37 it is OK to keep the recommended "define".
38
39 - Don't turn on the compiler optimization flag "-O". There's
40 a bug in either the optimizer or perl that causes perl to
41 not work correctly when the optimizer is on.
42
43 - Some of the configuration files in /etc used by the
44 networking APIs are either missing or have the wrong
45 names. In particular, make sure that there's either
46 an /etc/resolv.conf or and /etc/hosts, so that
47 gethostbyname() works, and make sure that the file
48 /etc/proto has been renamed to /etc/protocol (NOT
49 /etc/protocols, as used by other Unix systems).
50
51When using perl on OS/390 please keep in mind that the EBCDIC and ASCII
52character sets are different. Perl builtin functions that may behave
53differently under EBCDIC are mentioned in the perlport.pod document.
54
55OpenEdition (UNIX System Services) does not (yet) support the #! means
56of script invokation.
57See:
58
59 head `whence perldoc`
60
61for an example of how to use the "eval exec" trick to ask the shell to
62have perl run your scripts for you.
63
64perl-mvs mailing list: The Perl Institute (http://www.perl.org/)
65maintains a mailing list of interest to all folks building and/or
66using perl on EBCDIC platforms. To subscibe, send a message of:
67
68 subscribe perl-mvs
69
70to majordomo@perl.org.
71
72Regression tests: as the 5.005 kit was was being assembled
73the following "failures" were known to appear on some machines
74during `make test` (mostly due to ASCII vs. EBCDIC conflicts),
75your results may differ:
76
77comp/cpp..........FAILED at test 0
78op/pack...........FAILED at test 58
79op/stat...........Out of memory!
80op/taint..........FAILED at test 73
81lib/errno.........FAILED at test 1
82lib/posix.........FAILED at test 19
83lib/searchdict....FAILED at test 1