rusty@belch.Berkeley.EDU (Rusty Wright) (12/10/90)
What's the trick to get perl (patch level 41) to compile under Ultrix 4.1 on a DECstation with optimization? I thought I remembered someone saying that you had to use 1 for VOIDFLAGS and I'm doing that, but it's still failing tests op.eval and op.s.
jv@mh.nl (Johan Vromans) (12/10/90)
In article <RUSTY.90Dec9105756@belch.Berkeley.EDU> rusty@belch.Berkeley.EDU (Rusty Wright) writes:
What's the trick to get perl (patch level 41) to compile under Ultrix
4.1 on a DECstation with optimization? I thought I remembered someone
saying that you had to use 1 for VOIDFLAGS and I'm doing that, but
it's still failing tests op.eval and op.s.
If you are using the standard C-compiler: don't optimize. If you are
using gcc (OSF version 1.9.2.13): no problems should occur except for
a few compilation warnings.
Johan
evans@decvax.DEC.COM (Marc Evans) (12/10/90)
In article <RUSTY.90Dec9105756@belch.Berkeley.EDU>, rusty@belch.Berkeley.EDU (Rusty Wright) writes: |> What's the trick to get perl (patch level 41) to compile under Ultrix |> 4.1 on a DECstation with optimization? I thought I remembered someone |> saying that you had to use 1 for VOIDFLAGS and I'm doing that, but |> it's still failing tests op.eval and op.s. undef volatile - Marc -- =========================================================================== Marc Evans - WB1GRH - evans@decvax.DEC.COM | Synergytics (603)635-8876 Unix and X Software Contractor | 21 Hinds Ln, Pelham, NH 03076 ===========================================================================
meissner@osf.org (Michael Meissner) (12/11/90)
In article <RUSTY.90Dec9105756@belch.Berkeley.EDU> rusty@belch.Berkeley.EDU (Rusty Wright) writes: | What's the trick to get perl (patch level 41) to compile under Ultrix | 4.1 on a DECstation with optimization? I thought I remembered someone | saying that you had to use 1 for VOIDFLAGS and I'm doing that, but | it's still failing tests op.eval and op.s. Don't optimize, and set d_castneg to 'undef'. I don't remember off-hand which are the modules that have traditionally broken the MIPS optimizer. The castneg was recently reported, and it's because PERL and the MIPS compiler disagree on how negative floats are to be converted to unsigned. Alternatively, you could use my patches to GCC, which runs perl just fine even at the highest optimization level. If you have Ultrix 3.1, you do have to tell perl no to use the waitpid function, since the function is broken in those revisions. -- Michael Meissner email: meissner@osf.org phone: 617-621-8861 Open Software Foundation, 11 Cambridge Center, Cambridge, MA, 02142 Considering the flames and intolerance, shouldn't USENET be spelled ABUSENET?
tale@rpi.edu (David C Lawrence) (12/14/90)
Well, I find this all very curious. I am wondering right now what might be secretly broken in my the perl I had installed on the DECstations several days ago. I compiled on the 5600, running Ultrix 3.1C, with gcc first (well, second, after the native compile didn't do the trick and also had problems with void). Then I saw someone who followed up to Rusty's request saying to undefine volatile. So I did, and recompiled. Then perl passed all of its tests. So I installed it, somewhat trusting that it would be fine. In short, how I compiled with cc: o -DLANGUAGE_C -O -Olimit 3000[*] options o undef waitpid o undef volatile In particular, the various things I did not do which Rusty and Michael say to do: o -DJMPCLOBBER o Use "1" as voidflags (I used the 3 Configure decided on) o Don't use optimisation Are these simple differences in the version of the OS? (Yes, I saw that Michael said you could leave waitpid defined for Ultrix 4.) [*] I am expecting that Rusty's suggesting the use of -Olimit 30000 to optimise eval.c was a typo. I had upped it to 3000 to optimise both t?eval.c and t?toke.c though. My machine wasn't as severely hosed by it as his was. However they did take much longer to compile, but it was still completely done, from Configure to {,taint,suid}perl, in all under an hour. -- (setq mail '("tale@cs.rpi.edu" "tale@ai.mit.edu" "tale@rpitsmts.bitnet"))