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