Cant load ...BerkeleyDB.so for module BerkeleyDB: libdb-4.4.so

Cant load ...BerkeleyDB.so for module BerkeleyDB: libdb-4.4.so

am 19.01.2006 19:53:01 von consultmac2

I'm having trouble getting the BerkeleyDB perl plug-in (0.27) to work
in a specific case.
Here is my configuration: Fedora Core 4 on an HP OmniBook XE3 laptop.

The Berkeley database (v4.4.16) is sucessfully installed and accessible
via C++ programs that we've tried. BerkeleyDB builds and installs
without incident up to the point of doing the 'make test' operation.
Here's the first screenful of output from the process (much more than
that is generated):

**** start of quote ****
[root@localhost BerkeleyDB-0.27]# make test
PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e"
"test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/btree........Can't load
'/root/berkeley/BerkeleyDB-0.27/blib/arch/auto/BerkeleyDB/Be rkeleyDB.so'
for module BerkeleyDB: libdb-4.4.so: cannot open shared object file: No
such file or directory at
/usr/lib/perl5/5.8.6/i386-linux-thread-multi/DynaLoader.pm line 230.
at t/btree.t line 6
Compilation failed in require at t/btree.t line 6.
BEGIN failed--compilation aborted at t/btree.t line 6.
Undefined subroutine &BerkeleyDB::Term::close_everything called at
/root/berkeley/BerkeleyDB-0.27/blib/lib/BerkeleyDB.pm line 1675.
END failed--call queue aborted at t/btree.t line 6.
t/btree........dubious
Test returned status 255 (wstat 65280, 0xff00)
t/cds..........Can't load
'/root/berkeley/BerkeleyDB-0.27/blib/arch/auto/BerkeleyDB/Be rkeleyDB.so'
for module BerkeleyDB: libdb-4.4.so: cannot open shared object file: No
such file or directory at
/usr/lib/perl5/5.8.6/i386-linux-thread-multi/DynaLoader.pm line 230.
at t/cds.t line 8
Compilation failed in require at t/cds.t line 8.
BEGIN failed--compilation aborted at t/cds.t line 8.
Undefined subroutine &BerkeleyDB::Term::close_everything called at
/root/berkeley/BerkeleyDB-0.27/blib/lib/BerkeleyDB.pm line 1675.
END failed--call queue aborted at t/cds.t line 8.
t/cds..........dubious
Test returned status 255 (wstat 65280, 0xff00)
**** end of quote ****

We have two such laptops configured nearly identically and we have the
same error symptoms on both. On another computer, a Dell Precision 360,
I have SUSE 9.something installed and have been sucessful with building
and using BerkeleyDB perl plug-in (0.27) with the Berkeley database
(v4.4.16)

I don't see this problem described in the troubleshooting section of
the documentation associated with the plug-in. There is a slight
mention of problems with this plug-in when used with Redhat... and it
points to a bugtracker report on redhat.com, but I can't tell if that
applies to my situation or not. Googling "fedora perl BerkeleyDB cannot
open shared object" hasn't found me the answer yet.

After searching this group and others, the only concrete suggestion
that I thought would be helpful was to edit /etc/ld.so.conf and add the
path where libdb-4.4.so is found. I did that and followed up with the
recommended action of running /sbin/ldconfig .

make test continues to produce the very same errors as stated above,
even after completely rebooting the computer.

Help would be much appreciated.

Thanks in advance.

-bC

Re: Cant load ...BerkeleyDB.so for module BerkeleyDB: libdb-4.4.so

am 21.01.2006 01:20:58 von Ron Savage

On Fri, 20 Jan 2006 05:53:01 +1100, consultmac2 wrote:

Hi

> [root@localhost BerkeleyDB-0.27]# make test
> PERL_DL_NONLAZY=3D1 /usr/bin/perl "-MExtUtils::Command::MM" "-e"
> "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
> t/btree........Can't load
> '/root/berkeley/BerkeleyDB-
> 0.27/blib/arch/auto/BerkeleyDB/BerkeleyDB.so' for module
> BerkeleyDB: libdb-4.4.so: cannot open shared object file: No such
> file or directory at
> /usr/lib/perl5/5.8.6/i386-linux-thread-multi/DynaLoader.pm line
> 230. at t/btree.t line 6 Compilation failed in require at t/btree.t
> line 6.

Your output says root, but even so I'd check:

o The file
/root/berkeley/BerkeleyDB-0.27/blib/arch/auto/BerkeleyDB/Ber keleyDB.so
exists

o The same file and all directories above it are accessible by the user=
running
the make test

o Are the other programs using BerkeleyDB actually, really and truly using=
/the
very same file/? Yes, you said they are using the same version, that's not=
what
I'm asking :-)

HTH

Re: Cant load ...BerkeleyDB.so for module BerkeleyDB: libdb-4.4.so

am 23.01.2006 14:49:15 von consultmac2

Paul Marquess suggested that I try including the directory where the
berkeley DB library lives in the environment variable LD_LIBRARY_PATH.
That fixed it for me.

I was talking to someone on Friday that didn't know Berkeley DB or
the BerkeleyDB plug-in, but told me that Fedora Core 4 is essentially
an alpha of Red Hat's Enterprise product. Considering all that changed
and is new in FC 4 versus FC 3, he speculated that perhaps something in
FC 4 was breaking the BerkeleyDB plug-in stuff and that perhaps I
should back-up to FC 3.

I'm glad that I don't have to do that at this point.