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