X-Git-Url: https://perl5.git.perl.org/perl5.git/blobdiff_plain/954a4c1b76328f9623107f01659910c38d8206dd..673c2ba8988082a3225a61fc6a54304514e378e7:/README.os400 diff --git a/README.os400 b/README.os400 index 28a8a5f..cd78916 100644 --- a/README.os400 +++ b/README.os400 @@ -36,6 +36,12 @@ Starting from OS/400 V5R2 the IBM Visual Age compiler is supported on OS/400 PASE, so it is possible to build Perl natively on OS/400. The easier way, however, is to compile in AIX, as just described. +If you don't want to install the compiled Perl in AIX into /QOpenSys +(for packaging it before copying it to PASE), you can use a Configure +parameter: -Dinstallprefix=/tmp/QOpenSys/perl. This will cause the +"make install" to install everything into that directory, while the +installed files still think they are (will be) in /QOpenSys/perl. + If building natively on PASE, please do the build under the /QOpenSys directory, since Perl is happier when built on a case sensitive filesystem. @@ -71,21 +77,27 @@ latest PTFs to have this feature. Scripts starting with =head2 Known Problems -When compiling natively in PASE, there is no "oslevel" command as -there is in AIX-- this will confuse the Configure script. Therefore, -before running Configure you may want to create a script (in your -$PATH) called "oslevel" that prints out the level of AIX that your -version of PASE supports. Consult your documentation to find out -what this is, or just use "4.3.3.0". - -When using sockets, you probably will want a signal handler for -SIGPIPE since there seems to be some signal handling differences -between AIX and PASE. Especially, PASE doesn't seem to allow -writing to a closed socket but instead throws SIGPIPE immediately. -Because of this the subtest #18 of io_sock in IO::Socket fails. - -Some tests in Time::HiRes are failing because some of the system -calls being used aren't really implemented in PASE. +When compiling in PASE, there is no "oslevel" command. Therefore, +you may want to create a script called "oslevel" that echoes the +level of AIX that your version of PASE runtime supports. If you're +unsure, consult your documentation or use "4.3.3.0". + +If you have test cases that fail, check for the existence of spool files. +The test case may be trying to use a syscall that is not implemented +in PASE. To avoid the SIGILL, try setting the PASE_SYSCALL_NOSIGILL +environment variable or have a handler for the SIGILL. If you can +compile programs for PASE, run the config script and edit config.sh +when it gives you the option. If you want to remove fchdir(), which +isn't implement in V5R1, simply change the line that says: + +d_fchdir='define' + +to + +d_fchdir='undef' + +and then compile Perl. The places where fchdir() is used have +alternatives for systems that do not have fchdir() available. =head2 Perl on ILE