Bug 1768
Summary: | Perl DB lib is not opening DB files. | ||
---|---|---|---|
Product: | [Retired] Red Hat Linux | Reporter: | Wil Harris <wil> |
Component: | perl | Assignee: | Crutcher Dunnavant <crutcher> |
Status: | CLOSED DUPLICATE | QA Contact: | |
Severity: | high | Docs Contact: | |
Priority: | medium | ||
Version: | 6.0 | CC: | deh-redhat, smanes |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | i386 | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 1999-04-01 05:56:57 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Wil Harris
1999-03-24 23:44:45 UTC
Cristian, I think this relates to bug #1581 rather strongly. *** This bug has been marked as a duplicate of 1581 *** Despite the appearance that both bugs have to do with perl and database connectivity, they are probably not related. Bug 1581 has to do with AnyDBM_File, and bug 1768 has to do with DB_File; these are different things and use different underlying C routines. Bug 1768's actual origin is that libdb has changed from db1 to db2 in RedHat 6.0. Notice that perl is looking for libdb, not libdb1: deh% ldd perl libnsl.so.1 => /lib/libnsl.so.1 (0x40019000) libdb.so.3 => /lib/libdb.so.3 (0x4002e000) ^^^^^^^^^^^^^^^ libgdbm.so.2 => /usr/lib/libgdbm.so.2 (0x40068000) libdl.so.2 => /lib/libdl.so.2 (0x4006f000) libm.so.6 => /lib/libm.so.6 (0x40072000) libc.so.6 => /lib/libc.so.6 (0x4008e000) libcrypt.so.1 => /lib/libcrypt.so.1 (0x4017c000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000) deh% ls -al /lib/libdb.so.3 lrwxrwxrwx 1 root root 14 May 12 00:26 /lib/libdb.so.3 -> libdb-2.1.1.so ^^^^^^^^^^^^^^ deh% ls -al /lib/libdb.so.2 lrwxrwxrwx 1 root root 15 May 12 00:26 /lib/libdb.so.2 -> libdb1-2.1.1.so Indeed, there is a patch in perl-5.00503-2.src.rpm which attempts to deal with this: ... +# Glibc 2.1 comes with db2. If we link against that then databases created +# with the older perl (linked with db1) will not be readable by this +# new perl. So we disable normal "db" and force in the link of db1. +set `echo X "$libswanted "| sed -e 's/ db / db1 /'` ... I notice that perl5.005_03/ext/DB_File/Makefile.PL wasn't referenced in the patch, but contains the following line: my $LIB = "-ldb" ; |