Making perl run on a '6000

Kurt Shoens kurt at ks.almaden.ibm.com
Fri May 4 16:22:56 AEST 1990


I got perl running on the '6000 both on 9005 and later levels.  On
9005, perl liked being compiled with CC=xlc (i.e., ANSI compiler
rules).  On later releases, it liked cc better.  The version of perl
used was 3.0 Patchlevel 6.

In general, the problems had to do with C compiler pickiness about the
data types of pointers passed to routines like fwrite().  You can
either go through the source and cast them to (void *) or you can use
-D_NO_PROTO to keep the compiler from seeing the function prototypes.

There was also trouble about the return types of sprintf, vsprintf, and
signal.  For sprintf/vsprintf, I found that perl always ignores the
returned value, so I deleted perl's definition of their returned type.
For signal, I think I fixed it by hand.

In doio.c, there's trouble about pw_class, so I commented this out.

I link perl with -ldbm -lPW -lm -lbsd.  You have to put the -lbsd
last, otherwise the symbol "mcan" will be undefined.

The resulting perl fails two tests (comp.cpp and op.magic) and passes
the rest.  The same level on AIX/RT 2.2.1 passed all the tests, sigh.

Since I'm backlevel on perl, don't pass all the tests, and don't have
ship-level AIX3 software yet, I haven't reported the changes back to
Larry Wall yet.
--
Kurt Shoens, IBM Almaden Research Center, ...!uunet!ibmarc!kurt



More information about the Comp.unix.aix mailing list