Mailing List Archive

Various problems with 5.001m
We tried to compile Perl 5.001m on our 7 supported architectures, here
is the report:

> I was succesfull generating perl for the 7 following platforms:
>
> sparc-sun-sunos4.1.3
> sparc-sun-solaris2.3
> mips-dec-ultrix4.3
> hppa1.1-hp-hpux9.01
> rs6000-ibm-aix3.2.5
> alpha-dec-osf2.0
> mips-sgi-irix5.2
>
> with the following restrictions :
>
> 1. On mips-dec-ultrix4.3, I had to edit the Configure script to use
> sh5 instead of sh
>
> 2. On most platforms, using gcc does not seem to be a good idea.
>
> 3. On rs6000-ibm-aix3.2.5, the Configure script is still waiting some
> input from the user even with the flags " -d -e -s ". This is really
> annoying as you must imagine that maintaining software for 7
> platforms implies that we do it automatically with some sort of batch
> jobs.
>
> 4.On rs6000-ibm-aix3.2.5, the link failed as -lgdbm is not dound by cc
> even when in /usr/local/lib and seen such by Configure. I had to edit
> the Makefile to add -L/usr/local/lib for the variable "libs".
>
> 5. On sparc-sun-solaris2.3, it does not compile.
> - pp_sys.c needs that the macro I_FCNTL is defined in config.h which
> is not by default.
> - ODBM_File.c includes dbm.h that do not exist in /usr/include but
> in /usr/include/rpcsvc.
>
> 6.On sparc-sun-solaris2.3, it does not pass 1 test:
>
> :op/rand........FAILED on test 2
> :op/range.......ok

In addition, the compilation on HP-UX 10.01 worked fine with the HP-UX
9 hints file.

We have also a strange problem with GDBM, on some systems either gdbm.h or
gdbm_open is not found by Configure although GDBM is installed
identically on all our systems, in /usr/local. I would have loved to
debug this problem but Configure is not as easy to read as the Perl
sources :-)

Lionel Cons

+------- CERN - European Laboratory for Particle Physics -------+
| E-mail: Lionel.Cons@cern.ch PGP key ID: 1756ABED |
| Earth-mail: CN/DCI/UWS, CERN, CH-1211 GENEVE 23, Switzerland |
| Phone: + (41 22) 767 49 13 Fax: + (41 22) 767 71 55 |
+---------------------------------------------------------------+

Finagle's Creed:
Science is true. Don't be misled by facts.
Re: Various problems with 5.001m [ In reply to ]
Strange sunspot activity caused Lionel Cons <cons@dxcern.cern.ch> to write:
| > I was succesfull generating perl for the 7 following platforms:
| > 1. On mips-dec-ultrix4.3, I had to edit the Configure script to use
| > sh5 instead of sh

A good idea to submit this as a patch for hints/ultrix*, if that is the
case. I don't remember having to do this on 9.05 though.

| > 2. On most platforms, using gcc does not seem to be a good idea.
| >

In the past, I've compiled many versions of perl on SunOS 4.1.X, Solaris
2.X, HP-UX 9.05, and IRIX 5.X. I've always used gcc, and found it to be
much easier than using any of the commercial packages. What problems did
you have that would make you claim differently?

| > 5. On sparc-sun-solaris2.3, it does not compile.
| > - pp_sys.c needs that the macro I_FCNTL is defined in config.h which
| > is not by default.
| > - ODBM_File.c includes dbm.h that do not exist in /usr/include but
| > in /usr/include/rpcsvc.

Are you sure this was 5.001m? I thought this problem was taken care of in
a much early 5.001 patch (like a, wasn't it)?

| > 6.On sparc-sun-solaris2.3, it does not pass 1 test:
| >
| > :op/rand........FAILED on test 2
| > :op/range.......ok

This is most likely a function of having chosen the wrong number of bits
for rand. I forget now, but I think Solaris 2.X should have 15 bits, and
SunOS 4.X should have 31 bits? (backwards maybe???)

-spp
Re: Various problems with 5.001m [ In reply to ]
> From: Stephen Potter <spp@psa.pencom.com>


> | > 2. On most platforms, using gcc does not seem to be a good idea.
> | >
>
> In the past, I've compiled many versions of perl on SunOS 4.1.X, Solaris
> 2.X, HP-UX 9.05, and IRIX 5.X. I've always used gcc, and found it to be
> much easier than using any of the commercial packages. What problems did
> you have that would make you claim differently?

Steve, we've seen a lot of problem reports by people who are trying to
compile Perl5 on Solaris 2.x using gcc and other GNU utils. It's an endless
battle to get everyone to properly install their gcc and then to get them to
use Sun's /usr/ccs/bin utils and Sun's libc. I probably see a minimum of 2
of these reports each week on c.l.p.m.

On the other hand I've never had trouble with Sun's SC3.0.1 compiler and
I've never seen anyone report problems with it, either. The commercial
products on Solaris appear to be less troublesome than the GNU products.

> | > 5. On sparc-sun-solaris2.3, it does not compile.
> | > - pp_sys.c needs that the macro I_FCNTL is defined in config.h which
> | > is not by default.
> | > - ODBM_File.c includes dbm.h that do not exist in /usr/include but
> | > in /usr/include/rpcsvc.
>
> Are you sure this was 5.001m? I thought this problem was taken care of in
> a much early 5.001 patch (like a, wasn't it)?
>
> | > 6.On sparc-sun-solaris2.3, it does not pass 1 test:
> | >
> | > :op/rand........FAILED on test 2
> | > :op/range.......ok

We'd have to see the output of the myconfig script before we could make
decent guesses about these problems. The problems probably occurred because
someone didn't let Configure do its job.


Dean
Re: Various problems with 5.001m [ In reply to ]
> | > 2. On most platforms, using gcc does not seem to be a good idea.
> | >
>
> In the past, I've compiled many versions of perl on SunOS 4.1.X, Solaris
> 2.X, HP-UX 9.05, and IRIX 5.X. I've always used gcc, and found it to be
> much easier than using any of the commercial packages.

My perl build on ConvexOS dumps core very early when I build with gcc
2.3.3, but maybe I just need to upgrade gcc.

-Danny
Re: Various problems with 5.001m [ In reply to ]
Lionel Cons writes:
> We have also a strange problem with GDBM, on some systems either gdbm.h or
> gdbm_open is not found by Configure although GDBM is installed
> identically on all our systems, in /usr/local. I would have loved to
> debug this problem but Configure is not as easy to read as the Perl
> sources :-)

I had the same problems compiling on HP-UX 9.05. It seems that the
makefiles for the extensions don't get $userinc passed to them. I had
to soft link db.h to the top of the src tree to get it to compile.

-Sudish
Re: Various problems with 5.001m [ In reply to ]
> > We have also a strange problem with GDBM, on some systems either gdbm.h or
> > gdbm_open is not found by Configure although GDBM is installed
> > identically on all our systems, in /usr/local. I would have loved to
> > debug this problem but Configure is not as easy to read as the Perl
> > sources :-)
>
> I had the same problems compiling on HP-UX 9.05. It seems that the
> makefiles for the extensions don't get $userinc passed to them. I had
> to soft link db.h to the top of the src tree to get it to compile.

I've not tried GDBM here, so I don't think I can be of much help.

Although I suppose if someone could point me at the source for GDBM,
I could try it out.

Jeff
Re: Various problems with 5.001m [ In reply to ]
Thanks to everyone who replied, here is the next iteration...

Stephen Potter writes:
> Strange sunspot activity caused Lionel Cons <cons@dxcern.cern.ch> to write:
> | > I was succesfull generating perl for the 7 following platforms:
> | > 1. On mips-dec-ultrix4.3, I had to edit the Configure script to use
> | > sh5 instead of sh
>
> A good idea to submit this as a patch for hints/ultrix*, if that is the
> case. I don't remember having to do this on 9.05 though.

I don't know how to patch hints/ultrix* for this... Looking at Configure
itself, the easiest solution would be a specific test like the one
performed for HP-UX so that it uses ksh.

Dean Roehrich writes:
> > From: Stephen Potter <spp@psa.pencom.com>
> > | > 2. On most platforms, using gcc does not seem to be a good idea.
> >
> > In the past, I've compiled many versions of perl on SunOS 4.1.X, Solaris
> > 2.X, HP-UX 9.05, and IRIX 5.X. I've always used gcc, and found it to be
> > much easier than using any of the commercial packages. What problems did
> > you have that would make you claim differently?
>
> Steve, we've seen a lot of problem reports by people who are trying to
> compile Perl5 on Solaris 2.x using gcc and other GNU utils. It's an endless
> battle to get everyone to properly install their gcc and then to get them to
> use Sun's /usr/ccs/bin utils and Sun's libc. I probably see a minimum of 2
> of these reports each week on c.l.p.m.

Danny R. Faught writes:
> > | > 2. On most platforms, using gcc does not seem to be a good idea.
> > | >
> >
> > In the past, I've compiled many versions of perl on SunOS 4.1.X, Solaris
> > 2.X, HP-UX 9.05, and IRIX 5.X. I've always used gcc, and found it to be
> > much easier than using any of the commercial packages.
>
> My perl build on ConvexOS dumps core very early when I build with gcc
> 2.3.3, but maybe I just need to upgrade gcc.

When we build our PD stuff, we first try with gcc. If it gives
problems we use the vendors' cc. BTW, we use gcc version 2.6.3.

Sudish Joseph writes:
> Lionel Cons writes:
> > We have also a strange problem with GDBM, on some systems either gdbm.h or
> > gdbm_open is not found by Configure although GDBM is installed
> > identically on all our systems, in /usr/local. I would have loved to
> > debug this problem but Configure is not as easy to read as the Perl
> > sources :-)
>
> I had the same problems compiling on HP-UX 9.05. It seems that the
> makefiles for the extensions don't get $userinc passed to them. I had
> to soft link db.h to the top of the src tree to get it to compile.

Are we the only one to have GDBM installed in /usr/local and Configure
telling that it can't use GDBM? Should Configure look under /usr/local
to find GDBM by default?

Thanks in advance for your help,

Lionel Cons

+------- CERN - European Laboratory for Particle Physics -------+
| E-mail: Lionel.Cons@cern.ch |
| Earth-mail: CN/DCI/UWS, CERN, CH-1211 GENEVE 23, Switzerland |
| Phone: + (41 22) 767 49 13 Fax: + (41 22) 767 71 55 |
+---------------------------------------------------------------+

#!/usr/local/bin/perl5
($_=join('',map(srand($_*3)&&pack("c4",map($_+96,rand(23),
rand(23),rand(23),rand(23))),4303,214508,284492,89992,9907,
42475)))=~s'`' 'g;print"\u$_!\n";
Re: Various problems with 5.001m [ In reply to ]
On Wed, 23 Aug 1995, Lionel Cons wrote:

> We tried to compile Perl 5.001m on our 7 supported architectures, here
> is the report:
>
> > 1. On mips-dec-ultrix4.3, I had to edit the Configure script to use
> > sh5 instead of sh

Was that because the Configure failed, or because it was very slow?
I've heard it was slow, but never heard of any failures. Does every
ultrix 4.x system have sh5? Is the full path name /bin/sh5 or
something else?

I suppose some trick like the HP-UX feed to ksh wouldn't be enough
here? Are you suggesting changing every ocurrence of /bin/sh
to /bin/sh5 (or course that'd have to be a Configure test & variable
....).

If it's needed, then I guess there's little to do but try to
implement it somehow. Note, however, that lots of other people have
reported that Configure worked fine on ultrix 4.3 (though perhaps a
bit slowly), so I'll need a lot of convincing that it's worth the
effort to do anything. :-)


> > 3. On rs6000-ibm-aix3.2.5, the Configure script is still waiting some
> > input from the user even with the flags " -d -e -s ". This is really
> > annoying as you must imagine that maintaining software for 7
> > platforms implies that we do it automatically with some sort of batch
> > jobs.

It's not supposed to do that. Can you tell me specifically where it
stopped waiting for input? I certainly don't see that here.

> > 4.On rs6000-ibm-aix3.2.5, the link failed as -lgdbm is not dound by cc
> > even when in /usr/local/lib and seen such by Configure. I had to edit
> > the Makefile to add -L/usr/local/lib for the variable "libs".

Right. That's not specific to aix. If your system needs extra -L
directives to find your libraries, you have to supply them,
typically as part of ldflags, e.g. something like
sh Configure -Dldflags='-L/usr/local/lib'

[ . . . ]
> We have also a strange problem with GDBM, on some systems either gdbm.h or
> gdbm_open is not found by Configure although GDBM is installed
> identically on all our systems, in /usr/local. I would have loved to
> debug this problem but Configure is not as easy to read as the Perl
> sources :-)

That's certainly not intentional. It might be helpful to compare
the outputs of myconfig from the various systems. Some folks have
their compilers automatically search -L/usr/local/lib; others don't.

Good luck,

Andy Dougherty doughera@lafcol.lafayette.edu
Dept. of Physics
Lafayette College, Easton PA 18042