Commit | Line | Data |
522b859a |
1 | If you read this file _as_is_, just ignore the funny characters you see. |
2 | It is written in the POD format (see pod/perlpod.pod) which is specially |
3 | designed to be readable as is. |
4 | |
5 | =head1 NAME |
6 | |
7 | README.os400 - Perl version 5 on OS/400 |
8 | |
9 | =head1 DESCRIPTION |
10 | |
11 | This document describes various features of IBM's OS/400 operating |
12 | system that will affect how Perl version 5 (hereafter just Perl) is |
13 | compiled and/or runs. |
14 | |
15 | By far the easiest way to build Perl for OS/400 is to use the PASE |
16 | (Portable Application Solutions Environment), for more information see |
17 | http://www.iseries.ibm.com/developer/factory/pase/index.html |
18 | This environment allows one to use AIX APIs while programming, and it |
19 | provides a runtime that allows AIX binaries to execute directly on the |
20 | PowerPC iSeries. |
21 | |
22 | =head2 Compiling Perl for OS/400 PASE |
23 | |
24 | The recommended way to build Perl for the OS/400 PASE is to build the |
25 | Perl 5 source code (release 5.8.1 or later) under AIX. |
26 | |
27 | The trick is to give a special parameter to the Configure shell script |
28 | when running it on AIX: |
29 | |
30 | sh Configure -DPASE ... |
31 | |
32 | The default installation directory of Perl under PASE is /QOpenSys/perl. |
33 | This can be modified if needed with Configure parameter -Dprefix=/some/dir. |
34 | |
35 | Starting from OS/400 V5R2 the IBM Visual Age compiler is supported |
36 | on OS/400 PASE, so it is possible to build Perl natively on OS/400. |
37 | The easier way, however, is to compile in AIX, as just described. |
38 | |
39 | If building natively on PASE, please do the build under the /QOpenSys |
40 | directory, since Perl is happier when built on a case sensitive filesystem. |
41 | |
42 | =head2 Installing Perl in OS/400 PASE |
43 | |
44 | If you are compiling on AIX, simply do a "make install" on the AIX box. |
45 | Once the install finishes, tar up the /QOpenSys/perl directory. Transfer |
46 | the tarball to the OS/400 using FTP with the following commands: |
47 | |
48 | > binary |
49 | > site namefmt 1 |
50 | > put perl.tar /QOpenSys |
51 | |
52 | Once you have it on, simply bring up a PASE shell and extract the tarball. |
53 | |
54 | If you are compiling in PASE, then "make install" is the only thing you |
55 | will need to do. |
56 | |
57 | The default path for perl binary is /QOpenSys/perl/bin/perl. You'll |
58 | want to symlink /QOpenSys/usr/bin/perl to this file so you don't have |
59 | to modify your path. |
60 | |
61 | =head2 Using Perl in OS/400 PASE |
62 | |
63 | Perl in PASE may be used in the same manner as you would use Perl on AIX. |
64 | |
65 | Scripts starting with #!/usr/bin/perl should work if you have |
66 | /QOpenSys/usr/bin/perl symlinked to your perl binary. This will not |
67 | work if you've done a setuid/setgid or have environment variable |
68 | PASE_EXEC_QOPENSYS="N". If you have V5R1, you'll need to get the |
69 | latest PTFs to have this feature. Scripts starting with |
70 | #!/QOpenSys/perl/bin/perl should always work. |
71 | |
72 | =head2 Perl on ILE |
73 | |
74 | There exists a port of Perl to the ILE environment. This port, however, |
75 | is based quite an old release of Perl, Perl 5.00502 (August 1998). |
76 | (As of July 2002 the latest release of Perl is 5.8.0, and even 5.6.1 |
77 | has been out since April 2001.) If you need to run Perl on ILE, though, |
78 | you may need this older port: http://www.cpan.org/ports/#os400 |
79 | Note that any Perl release later than 5.00502 has not been ported to ILE. |
80 | |
81 | If you need to use Perl in the ILE environment, you may want to consider |
82 | using Qp2RunPase() to call the PASE version of Perl. |
83 | |
84 | =head1 AUTHORS |
85 | |
86 | Jarkko Hietaniemi <jhi@iki.fi> |
87 | Bryan Logan <bryanlog@us.ibm.com> |
88 | David Larson <larson1@us.ibm.com> |
89 | |
90 | =cut |