Perl / perl5

🐪 The Perl programming language
https://dev.perl.org/perl5/
Other
1.86k stars 529 forks source link

Not OK: perl 5.00563 on IP26-irix 6.5 #925

Closed p5pRT closed 20 years ago

p5pRT commented 24 years ago

Migrated from rt.perl.org#1868 (status was 'resolved')

Searchable as RT1868$

p5pRT commented 24 years ago

From jarausch@numa1.igpm.rwth-aachen.de

Tiny BUILD problem I have Berkeley db-3.0.55 install und the Configure process does NOT install DB_File by default. When forcing it to do\, it passes all tests except test 12 as is currently normal

It SEEMS to fail lib/io_xs and lib/trig but doing (in the t directory)

./perl TEST lib/io_xs.t ./perl TEST lib/trig.t

then all tests are passed. Doing ./perl -I../lib harness lib/io_xs.t passes without problems while lib/trig.t gives lib/trig............dubious
  Test returned status 0 (wstat 11\, 0xb)

and there is a 'core' file in t but again running it separately causes no problems

What am I missing?

Perl Info ``` Site configuration information for perl 5.00563: Configured by jarausch at Thu Dec 9 14:01:18 CST 1999. Summary of my perl5 (revision 5.0 version 5 subversion 63) configuration: Platform: osname=irix, osvers=6.5, archname=IP26-irix uname='irix64 numa1 6.5 07151439 ip26 ' config_args='-Dcc=cc -Dprefix=/usr/LOCAL -Dlocincpth=/usr/LOCAL/include -Dloclibpth=/usr/LOCAL/lib' hint=recommended, useposix=true, d_sigaction=define usethreads=undef useperlio=undef d_sfio=undef use64bits=undef usemultiplicity=undef Compiler: cc='cc', optimize='-O3 -mips4 -OPT:Olimit=0', gccversion= cppflags='-D_BSD_TYPES -D_BSD_TIME -I/usr/LOCAL/include -DLANGUAGE_C' ccflags ='-D_BSD_TYPES -D_BSD_TIME -I/usr/LOCAL/include -DLANGUAGE_C' stdchar='unsigned char', d_stdstdio=define, usevfork=false intsize=4, longsize=4, ptrsize=4, doublesize=8 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16 alignbytes=8, usemymalloc=y, prototype=define Linker and Libraries: ld='cc', ldflags =' -Wl,-woff,84 -L/usr/LOCAL/lib' libpth=/usr/LOCAL/lib /usr/lib32 /lib32 libs=-lgdbm -lm -lc libc=/usr/lib32/libc.so, so=so, useshrplib=true, libperl=libperl.so Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags=' -Wl,-rpath,/usr/LOCAL/lib/perl5/5.00563/IP26-irix/CORE' cccdlflags='-Wl,-rpath,/usr/LOCAL/lib/perl5/5.00563/IP26-irix/CORE', lddlflags='-shared -L/usr/LOCAL/lib' Locally applied patches: @INC for perl 5.00563: /usr/LOCAL/lib/perl5/5.00563/IP26-irix /usr/LOCAL/lib/perl5/5.00563 /usr/LOCAL/lib/site_perl/5.00563/IP26-irix /usr/LOCAL/lib/site_perl . Environment for perl 5.00563: HOME=/usr/people/jarausch LANG=C LANGUAGE (unset) LD_LIBRARY_PATH=/usr/people/jarausch/ZIP/Netscape/package LOGDIR (unset) PATH=.:/usr/people/jarausch/bin:/usr/PRIVATE/bin:/usr/LOCAL/bin:/usr/LOCAL/teTeX/bin:/usr/bin:/usr/java/bin:/usr/bsd:/bin:/usr/bin/X11:/usr/local/bin:/usr/local/bin/X11:/usr/sbin:/usr/demos/bin PERL_BADLANG (unset) SHELL=/bin/zsh ```
p5pRT commented 24 years ago

From @doughera88

On Thu\, 9 Dec 1999\, Helmut Jarausch wrote​:

This is a build failure report for perl from jarausch@​igpm.rwth-aachen.de\, generated with the help of perlbug 1.27 running under perl 5.00563.

----------------------------------------------------------------- [Please enter your report here]

Tiny BUILD problem I have Berkeley db-3.0.55 install und the Configure process does NOT install DB_File by default. When forcing it to do\, it passes all tests except test 12 as is currently normal

Hmm. I've never seen db-3\, but the Configure tests are designed to allow any db version \< 2 or >= 2.3.4. It's possible the version detection logic has changed in 3.0.55 or that Configure is finding a mixture of old and new versions.

Try running Configure without the -s switch\, i.e.

  rm -f config.sh   sh Configure [your usual args] -dE > config.log 2>&1

The db tests ought to print out more information. Edit down the config.log and send along the relevant db parts and I'll see what sense I can make of it.

Thanks\,

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

p5pRT commented 24 years ago

From @pmqs

From​: Andy Dougherty [mailto​:doughera@​lafayette.edu]  

On Thu\, 9 Dec 1999\, Helmut Jarausch wrote​:

This is a build failure report for perl from jarausch@​igpm.rwth-aachen.de\, generated with the help of perlbug 1.27 running under perl 5.00563.

----------------------------------------------------------------- [Please enter your report here]

Tiny BUILD problem I have Berkeley db-3.0.55 install und the Configure process does NOT install DB_File by default. When forcing it to do\, it passes all tests except test 12 as is currently normal

Hmm. I've never seen db-3\, but the Configure tests are designed to allow any db version \< 2 or >= 2.3.4. It's possible the version detection logic has changed in 3.0.55 or that Configure is finding a mixture of old and new versions.

The version logic is unchanged with Berkeley DB 3.x

Paul

p5pRT commented 24 years ago

From @doughera88

On Thu\, 9 Dec 1999\, Andy Dougherty wrote​:

On Thu\, 9 Dec 1999\, Helmut Jarausch wrote​:

I have Berkeley db-3.0.55 install und the Configure process does NOT install DB_File by default.

Thanks to Helmut's patient experimenting\, we have found the problem​:

Helmut> I had forgotten that db-3.0.55 needs to be linked to libpthread.so

My question is -- is this generic? On platforms other than Irix\, does db-3.0.xx need to be linked to libpthread (or equivalent)?

On Irix\, what's the downside of *always* including -lpthread in the list of libraries to use? Specifically\, I'm imagining modifying Configure to magically add -lpthread on Irix if db >=3 and if -lpthread is not already there. I'm concerned this might break something else\, however.

Anybody have any good ideas?

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

p5pRT commented 24 years ago

From @pmqs

From​: Andy Dougherty [mailto​:doughera@​lafayette.edu]

On Thu\, 9 Dec 1999\, Andy Dougherty wrote​:

On Thu\, 9 Dec 1999\, Helmut Jarausch wrote​:

I have Berkeley db-3.0.55 install und the Configure process does NOT install DB_File by default.

Thanks to Helmut's patient experimenting\, we have found the problem​:

Helmut> I had forgotten that db-3.0.55 needs to be linked to libpthread.so

That's a new one on me. Is there something in the Berkeley DB documentation that mentions that?

My question is -- is this generic?

Nope.

On platforms other than Irix\, does db-3.0.xx need to be linked to libpthread (or equivalent)?

Nope\, it isn't needed on Linux or SunOS.

Paul

p5pRT commented 24 years ago

From [Unknown Contact. See original ticket]

"A" == Andy Dougherty \doughera@&#8203;lafayette\.edu writes​:

A> On Irix\, what's the downside of *always* including -lpthread in the A> list of libraries to use? Specifically\, I'm imagining modifying Configure A> to magically add -lpthread on Irix if db >=3 and if -lpthread is not A> already there. I'm concerned this might break something else\, however.

If you include -lpthread\, I haven't figured out how to use perl's malloc. Probably need to define the missing entrypoints that are used by libpthread (which also replaces libcmalloc with a thread-safe one).

-- Scott Henry \scotth@&#8203;sgi\.com / Help! My disclaimer is missing! IRIX MTS\, / GIGO *really* means​: Garbage in\, Gospel Out Silicon Graphics\, Inc / http​://reality.sgi.com/scotth/

p5pRT commented 24 years ago

From @doughera88

On Fri\, 10 Dec 1999\, Scott Henry wrote​:

"A" == Andy Dougherty \doughera@&#8203;lafayette\.edu writes​:

A> On Irix\, what's the downside of *always* including -lpthread in the A> list of libraries to use? Specifically\, I'm imagining modifying Configure A> to magically add -lpthread on Irix if db >=3 and if -lpthread is not A> already there. I'm concerned this might break something else\, however.

If you include -lpthread\, I haven't figured out how to use perl's malloc. Probably need to define the missing entrypoints that are used by libpthread (which also replaces libcmalloc with a thread-safe one).

Hmm. Messier and messier. Maybe it's back to figuring out why this installation of db-3.0.55 wandted -lpthread on Irix but doesn't seem to care on Solaris or Linux.

Thanks for the info.

Hmm further -- I think that this may no longer be true in 5.005_63 -- I vaguely recall perl's malloc is normally no longer supposed to try to replace the system malloc\, but always be called perl_malloc or some such.

Still\, I think it's time to go back to db-3.0.55 and see what's up at that end.

Thanks\,

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

p5pRT commented 24 years ago

From @doughera88

On Thu\, 9 Dec 1999\, Andy Dougherty wrote​:

On Thu\, 9 Dec 1999\, Helmut Jarausch wrote​:

Tiny BUILD problem I have Berkeley db-3.0.55 install und the Configure process does NOT install DB_File by default. When forcing it to do\, it passes all tests except test 12 as is currently normal

The ultimate difficulty here was that db-3.0.55 was linked against -lpthread\, while the perl being built was not. I don't have a generic solution to that problem yet.

In the meantime\, this tiny Configure patch at least exposes the problem earlier and gives some information about what might be needed​:

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

Inline Patch ```diff --- perl/Configure Fri Dec 10 14:43:44 1999 +++ andy/Configure Wed Dec 22 14:19:29 1999 @@ -20,7 +20,7 @@ # $Id: Head.U,v 3.0.1.9 1997/02/28 15:02:09 ram Exp $ # -# Generated on Tue Nov 16 23:04:27 EET 1999 [metaconfig 3.0 PL70] +# Generated on Wed Dec 22 14:18:58 EST 1999 [metaconfig 3.0 PL70] # (with additional metaconfig patches by perlbug@perl.com) cat >/tmp/c1$$ <&4 else echo "I can't use Berkeley DB with your . I'll disable Berkeley DB." >&4 ```