dww@cbnewsl.ATT.COM (david.w.weatherford) (01/20/90)
FYI, I had to make the following changes in order to get perl (patchlevel 8) to work on my 3B2/400 running SVR4.0: 1. Though Configure correctly found libsocket, it did not know that libsocket requires libnsl. So I had to add "-lnsl" to the list of additional libraries. 2. The default output format of "nm" changed with C Issue 5.0, so I had to add another line to Configure, after line 1437: $contains '^printf$' libc.list >/dev/null 2>&1 || \ $sed -n -e 's/^.*|FUNC |GLOB .*|//p' <libc.tmp >libc.list Without this, Configure thought this might be a Cray... (I wish!) 3. There is a conflict between <perl.h> and <sys/vnode.h>: perl.h #defines VREG, whereas vnode.h uses it as an enum literal. I removed the definition from perl.h, since VREG is not actually used in the perl source, anyway. 4. Another bogosity dealing with <time.h> and friends: My system has <utime.h>, but it does not declare the "acusec" and "modusec" members which are assumed in doio.c (with a comment that "hopefully I_UTIME implies these"; it doesn't!). Fix was to change the #define I_UTIME to an #undef in config.h. With all these changes, perl compiled with only five warnings (concerning the change in semantics of unsigned promotions with ANSI C). It passed all but one test. For reasons beyond me, op.mkdir failed test 7 (removing a non-existant directory gives wrong error code). Running "rmdir" directly gives the expected message "rmdir: blurfl: Directory does not exist", so I don't even know WHY the perl script tries to match "/such/" in $!. It seems that it expects "No such file or directory", but all the systems I have tried (386, Amdahl, 3b2 with SVR3.2 and 4.0) print the first form, not the second. Any clues? Thanks, Larry, for making perl available to the world! It's certainly a very useful language for doing string manipulation and writing system administration scripts! Dave Weatherford attunix!dww