Problem With DB_File Installation On Red-Hat Linux 7.1

2002-03-14 Thread James McKim

I'm trying to install DB_File on our Red-Hat Linux. 7.1 box and am 
getting an error about having 2 versions of BerkeleyDB installed. The 
log of the installation follows. Any help would be appreciated.

James

  CPAN.pm: Going to build P/PM/PMQS/DB_File-1.803.tar.gz

Parsing config.in...
Looks Good.
Checking if your kit is complete...
Looks good
Writing Makefile for DB_File
cp DB_File.pm blib/lib/DB_File.pm
AutoSplitting blib/lib/DB_File.pm (blib/lib/auto/DB_File)
cc -c -I/usr/local/BerkeleyDB/include -fno-strict-aliasing 
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2   -DVERSION=\1.803\ 
-DXS_VERSION=\1.803\ -fpic 
-I/usr/local/lib/perl5/5.6.1/i686-linux/CORE -D_NOT_CORE  
-DmDB_Prefix_t=size_t -DmDB_Hash_t=u_int32_t  version.c
/usr/local/bin/perl -I/usr/local/lib/perl5/5.6.1/i686-linux 
-I/usr/local/lib/perl5/5.6.1 /usr/local/lib/perl5/5.6.1/ExtUtils/xsubpp 
-noprototypes -typemap /usr/local/lib/perl5/5.6.1/ExtUtils/typemap 
-typemap typemap DB_File.xs  DB_File.xsc  mv DB_File.xsc DB_File.c
cc -c -I/usr/local/BerkeleyDB/include -fno-strict-aliasing 
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2   -DVERSION=\1.803\ 
-DXS_VERSION=\1.803\ -fpic 
-I/usr/local/lib/perl5/5.6.1/i686-linux/CORE -D_NOT_CORE  
-DmDB_Prefix_t=size_t -DmDB_Hash_t=u_int32_t  DB_File.c
Running Mkbootstrap for DB_File ()
chmod 644 DB_File.bs
rm -f blib/arch/auto/DB_File/DB_File.so
LD_RUN_PATH=/usr/lib cc  -shared -L/usr/local/lib version.o DB_File.o  
-o blib/arch/auto/DB_File/DB_File.so   -ldb 
chmod 755 blib/arch/auto/DB_File/DB_File.so
cp DB_File.bs blib/arch/auto/DB_File/DB_File.bs
chmod 644 blib/arch/auto/DB_File/DB_File.bs
  /usr/bin/make  -- OK
Running make test
PERL_DL_NONLAZY=1 /usr/local/bin/perl -Iblib/arch -Iblib/lib 
-I/usr/local/lib/perl5/5.6.1/i686-linux -I/usr/local/lib/perl5/5.6.1 -e 
'use Test::Harness qw(runtests $verbose); $verbose=0; runtests ARGV;' 
t/*.t
t/db-btree..Can't load 'blib/arch/auto/DB_File/DB_File.so' for 
module DB_File: blib/arch/auto/DB_File/DB_File.so: undefined symbol: 
db_version at /usr/local/lib/perl5/5.6.1/i686-linux/DynaLoader.pm line 206.
 at t/db-btree.t line 23
Compilation failed in require at t/db-btree.t line 23.
BEGIN failed--compilation aborted at t/db-btree.t line 23.
t/db-btree..dubious  

Test returned status 255 (wstat 65280, 0xff00)
t/db-hash...Can't load 'blib/arch/auto/DB_File/DB_File.so' for 
module DB_File: blib/arch/auto/DB_File/DB_File.so: undefined symbol: 
db_version at /usr/local/lib/perl5/5.6.1/i686-linux/DynaLoader.pm line 206.
 at t/db-hash.t line 23
Compilation failed in require at t/db-hash.t line 23.
BEGIN failed--compilation aborted at t/db-hash.t line 23.
t/db-hash...dubious  

Test returned status 255 (wstat 65280, 0xff00)
t/db-recno..Can't load 'blib/arch/auto/DB_File/DB_File.so' for 
module DB_File: blib/arch/auto/DB_File/DB_File.so: undefined symbol: 
db_version at /usr/local/lib/perl5/5.6.1/i686-linux/DynaLoader.pm line 206.
 at t/db-recno.t line 23
Compilation failed in require at t/db-recno.t line 23.
BEGIN failed--compilation aborted at t/db-recno.t line 23.
t/db-recno..dubious  

Test returned status 255 (wstat 65280, 0xff00)
FAILED--3 test scripts could be run, alas--no output ever seen
make: *** [test_dynamic] Error 2
  /usr/bin/make test -- NOT OK
Running make install
  make test had returned bad status, won't install without force

-- 

James McKim, President
ISRG, Inc.
V: (603) 497-3015  F: (603) 497-2599
http://www.isrginc.com

Strategic use of information and human capital to improve your
bottom line is our bottom line.





Problem Locating DB_File.PM at startup of perl script

2001-07-18 Thread James McKim

Hi all,

I've run into a very frustrating problem. I'm getting the old Can't
locate loadable object for module... error, yet the file does exist in
the @INC path. Here's some system output:

---

[Wed Jul 18 12:18:04 2001] pickcity.cgi: Can't locate loadable object
for module DB_File in @INC (@INC contains:
/usr/local/lib/perl5/5.6.1/i686-linux /usr/local/lib/perl5/5.6.1
/usr/local/lib/perl5/site_perl/5.6.1/i686-linux
/usr/local/lib/perl5/site_perl/5.6.1 /usr/local/lib/perl5/site_perl .)
at /var/pickcity/htdocs/pickcity.cgi line 12
[Wed Jul 18 12:18:04 2001] pickcity.cgi: Compilation failed in require
at /var/pickcity/htdocs/pickcity.cgi line 12.
[Wed Jul 18 12:18:04 2001] pickcity.cgi: BEGIN failed--compilation
aborted at /var/pickcity/htdocs/pickcity.cgi line 12.
[root@localhost DB_File]# ls
/usr/local/lib/perl5/5.6.1/i686-linux/DB_File.pm
/usr/local/lib/perl5/5.6.1/i686-linux/DB_File.pm
[root@localhost DB_File]#
--

Anyone have any ideas as to why perl can't seem to find the file
eventhough the system, clearly, can?

James




Re: Problem Locating DB_File.PM at startup of perl script

2001-07-18 Thread James McKim

Interesting question.

The file owner is root. However, I actually launched the perl cgi from the shell as 
root and got
the error message, so I'm not sure that matching the file owner with the owner of the 
httpd
process would make much difference (yet).

James

darren chamberlain wrote:

 James McKim [EMAIL PROTECTED] said something to this effect on 07/18/2001:
  Hi all,
 
  I've run into a very frustrating problem. I'm getting the old Can't
  locate loadable object for module... error, yet the file does exist in
  the @INC path. Here's some system output:
 
  ---
 
  [Wed Jul 18 12:18:04 2001] pickcity.cgi: Can't locate loadable object
  for module DB_File in @INC (@INC contains:
  /usr/local/lib/perl5/5.6.1/i686-linux /usr/local/lib/perl5/5.6.1
  /usr/local/lib/perl5/site_perl/5.6.1/i686-linux
  /usr/local/lib/perl5/site_perl/5.6.1 /usr/local/lib/perl5/site_perl .)
  at /var/pickcity/htdocs/pickcity.cgi line 12
  [Wed Jul 18 12:18:04 2001] pickcity.cgi: Compilation failed in require
  at /var/pickcity/htdocs/pickcity.cgi line 12.
  [Wed Jul 18 12:18:04 2001] pickcity.cgi: BEGIN failed--compilation
  aborted at /var/pickcity/htdocs/pickcity.cgi line 12.
  [root@localhost DB_File]# ls
  /usr/local/lib/perl5/5.6.1/i686-linux/DB_File.pm
  /usr/local/lib/perl5/5.6.1/i686-linux/DB_File.pm
  [root@localhost DB_File]#
  
--
 
  Anyone have any ideas as to why perl can't seem to find the file
  eventhough the system, clearly, can?

 What are the permissions on
 /usr/local/lib/perl5/5.6.1/i686-linux/DB_File.pm? Can the owner
 of the httpd process read the file?

 (darren)

 --
 Real computer scientists don't program in assembler.  They don't write
 in anything less portable than a number two pencil.




Re: Problem Locating DB_File.PM at startup of perl script

2001-07-18 Thread James McKim

BTW, executing the script seemed to be able to locate CGI, DBI, and POSIX just fine.

James

darren chamberlain wrote:

 James McKim [EMAIL PROTECTED] said something to this effect on 07/18/2001:
  Hi all,
 
  I've run into a very frustrating problem. I'm getting the old Can't
  locate loadable object for module... error, yet the file does exist in
  the @INC path. Here's some system output:
 
  ---
 
  [Wed Jul 18 12:18:04 2001] pickcity.cgi: Can't locate loadable object
  for module DB_File in @INC (@INC contains:
  /usr/local/lib/perl5/5.6.1/i686-linux /usr/local/lib/perl5/5.6.1
  /usr/local/lib/perl5/site_perl/5.6.1/i686-linux
  /usr/local/lib/perl5/site_perl/5.6.1 /usr/local/lib/perl5/site_perl .)
  at /var/pickcity/htdocs/pickcity.cgi line 12
  [Wed Jul 18 12:18:04 2001] pickcity.cgi: Compilation failed in require
  at /var/pickcity/htdocs/pickcity.cgi line 12.
  [Wed Jul 18 12:18:04 2001] pickcity.cgi: BEGIN failed--compilation
  aborted at /var/pickcity/htdocs/pickcity.cgi line 12.
  [root@localhost DB_File]# ls
  /usr/local/lib/perl5/5.6.1/i686-linux/DB_File.pm
  /usr/local/lib/perl5/5.6.1/i686-linux/DB_File.pm
  [root@localhost DB_File]#
  
--
 
  Anyone have any ideas as to why perl can't seem to find the file
  eventhough the system, clearly, can?

 What are the permissions on
 /usr/local/lib/perl5/5.6.1/i686-linux/DB_File.pm? Can the owner
 of the httpd process read the file?

 (darren)

 --
 Real computer scientists don't program in assembler.  They don't write
 in anything less portable than a number two pencil.




Re: Problem Locating DB_File.PM at startup of perl script

2001-07-18 Thread James McKim

Ken,

Thanks for your reply. It does makes sense, eventhough I'm new to perl modules and 
their
implementation.

BTW, do you know what that file would be named? I installed it under perl 5.6.0, but 
when I try
to install it under 5.6.1 I get the error (which seems to be a linker error) 
/usr/bin/ld:
cannot find -ldb.

A bit of research lead me to some mention of needing a libdb2 version, but I haven't 
gotten to
deep into it yet and am hoping that I can use my previous installation of DB_File 
(under 5.6.0)
for now.

Cheers,

James

Ken Williams wrote:

 Hi James,

 The loadable object is not the .pm file, it's the binary compiled
 object file that DB_File.pm needs to bootstrap.  Sounds like you need to
 reinstall the module.

 [EMAIL PROTECTED] (James McKim) wrote:
 Hi all,
 
 I've run into a very frustrating problem. I'm getting the old Can't
 locate loadable object for module... error, yet the file does exist in
 the @INC path. Here's some system output:
 
 ---
 
 [Wed Jul 18 12:18:04 2001] pickcity.cgi: Can't locate loadable object
 for module DB_File in @INC (@INC contains:
 /usr/local/lib/perl5/5.6.1/i686-linux /usr/local/lib/perl5/5.6.1
 /usr/local/lib/perl5/site_perl/5.6.1/i686-linux
 /usr/local/lib/perl5/site_perl/5.6.1 /usr/local/lib/perl5/site_perl .)
 at /var/pickcity/htdocs/pickcity.cgi line 12
 [Wed Jul 18 12:18:04 2001] pickcity.cgi: Compilation failed in require
 at /var/pickcity/htdocs/pickcity.cgi line 12.
 [Wed Jul 18 12:18:04 2001] pickcity.cgi: BEGIN failed--compilation
 aborted at /var/pickcity/htdocs/pickcity.cgi line 12.
 [root@localhost DB_File]# ls
 /usr/local/lib/perl5/5.6.1/i686-linux/DB_File.pm
 /usr/local/lib/perl5/5.6.1/i686-linux/DB_File.pm
 [root@localhost DB_File]#
 
--
 
 Anyone have any ideas as to why perl can't seem to find the file
 eventhough the system, clearly, can?
 
 James
 
 

   ------
   Ken Williams Last Bastion of Euclidity
   [EMAIL PROTECTED]The Math Forum




Problem With Perl Versions

2001-07-16 Thread James McKim

Hello all,

In trying to upgrade a RedHat Linux7.0 system I inherited to Perl5.6.0
There are several versions of perl installed on the system and I've run
into a problem restarting the server.  To set a context for you all, I'm
not a perl or apache expert, so I may be (OK probably) missing something
here.

I got the following message when trying to start the server.
---

[Fri Jul 13 10:37:24 2001] [error] Perl 5.00564 required--this is only
version 5.00503, stopped at /etc/httpd//lib.pm line 3.
BEGIN failed--compilation aborted at /etc/httpd//lib.pm line 3.
BEGIN failed--compilation aborted at /var/pickcity/htdocs/init.pl line
1.

Syntax error on line 1029 of /etc/httpd/conf/httpd.conf:
Perl 5.00564 required--this is only version 5.00503, stopped at
/etc/httpd//lib.pm line 3.
BEGIN failed--compilation aborted at /etc/httpd//lib.pm line 3.
BEGIN failed--compilation aborted at /var/pickcity/htdocs/init.pl line
1.


This didn't make sense because, as I said above, I installed perl5.6.0.
So, just to double check, I invoked perl from the command line (from
/usr/bin) to ask it what version it is, I got the following:



[root@localhost pickcity]# perl -v

This is perl, v5.6.0 built for i386-linux

Copyright 1987-2000, Larry Wall

Perl may be copied only under the terms of either the Artistic License
or the
GNU General Public License, which may be found in the Perl 5.0 source
kit.

Complete documentation for Perl, including FAQ lists, should be found on

this system using `man perl' or `perldoc perl'.  If you have access to
the
Internet, point your browser at http://www.perl.com/, the Perl Home
Page.
-

This is the only perl executable on the system that I can tell.

Note that I'm trying to use the use lib syntax in init.pl to point
Apache and Perl to the set of perl5.6.0 directories where the perl
modules live as they doesn't seem to be pointing to the right
directories. So, this seems to be sort of a catch 22 . It's telling me
that I don't have the right version, yet when I invoke perl, it tells me
that I have a totally different version.

It appears that somehow, Apache is trying to use a version of perl other
than that currently on the system. I don't know if this means its
pointing to modules that are old or even how thinks it knows what the
current version is. Any help would be appreciated.

Thanks,

James




Re: Problem With Perl Versions

2001-07-16 Thread James McKim

Thanks for the suggestion. It seems odd since libperl.so and libperl.a are in the 5.6.0
directories and seem to have been created when I installed the 5.6.0 version, but I 
don't
know where the binary is it thinks it should be using, so recompiling may help.

James

Aaron Patterson wrote:

 You probably have mod_perl compiled with perl 5.00503.  Try recompiling
 mod_perl.  That may help.

 --Aaron

 On Fri, 13 Jul 2001, James McKim wrote:

  Hello all,
 
  In trying to upgrade a RedHat Linux7.0 system I inherited to Perl5.6.0
  There are several versions of perl installed on the system and I've run
  into a problem restarting the server.  To set a context for you all, I'm
  not a perl or apache expert, so I may be (OK probably) missing something
  here.
 
  I got the following message when trying to start the server.
  
---
 
  [Fri Jul 13 10:37:24 2001] [error] Perl 5.00564 required--this is only
  version 5.00503, stopped at /etc/httpd//lib.pm line 3.
  BEGIN failed--compilation aborted at /etc/httpd//lib.pm line 3.
  BEGIN failed--compilation aborted at /var/pickcity/htdocs/init.pl line
  1.
 
  Syntax error on line 1029 of /etc/httpd/conf/httpd.conf:
  Perl 5.00564 required--this is only version 5.00503, stopped at
  /etc/httpd//lib.pm line 3.
  BEGIN failed--compilation aborted at /etc/httpd//lib.pm line 3.
  BEGIN failed--compilation aborted at /var/pickcity/htdocs/init.pl line
  1.
  

 
  This didn't make sense because, as I said above, I installed perl5.6.0.
  So, just to double check, I invoked perl from the command line (from
  /usr/bin) to ask it what version it is, I got the following:
 
  
 
  [root@localhost pickcity]# perl -v
 
  This is perl, v5.6.0 built for i386-linux
 
  Copyright 1987-2000, Larry Wall
 
  Perl may be copied only under the terms of either the Artistic License
  or the
  GNU General Public License, which may be found in the Perl 5.0 source
  kit.
 
  Complete documentation for Perl, including FAQ lists, should be found on
 
  this system using `man perl' or `perldoc perl'.  If you have access to
  the
  Internet, point your browser at http://www.perl.com/, the Perl Home
  Page.
  
-
 
  This is the only perl executable on the system that I can tell.
 
  Note that I'm trying to use the use lib syntax in init.pl to point
  Apache and Perl to the set of perl5.6.0 directories where the perl
  modules live as they doesn't seem to be pointing to the right
  directories. So, this seems to be sort of a catch 22 . It's telling me
  that I don't have the right version, yet when I invoke perl, it tells me
  that I have a totally different version.
 
  It appears that somehow, Apache is trying to use a version of perl other
  than that currently on the system. I don't know if this means its
  pointing to modules that are old or even how thinks it knows what the
  current version is. Any help would be appreciated.
 
  Thanks,
 
  James