Bug 22440 - The apache executable uses both db2 and db3, creating runtime conflicts to DB_File.so in mod_perl
The apache executable uses both db2 and db3, creating runtime conflicts to DB...
Product: Red Hat Linux
Classification: Retired
Component: apache (Show other bugs)
i386 Linux
medium Severity medium
: ---
: ---
Assigned To: Nalin Dahyabhai
Need Real Name
Depends On:
  Show dependency treegraph
Reported: 2000-12-18 05:32 EST by Julio Sanchez Fernandez
Modified: 2007-04-18 12:30 EDT (History)
1 user (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2000-12-18 05:32:04 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Julio Sanchez Fernandez 2000-12-18 05:32:01 EST
mod_rewrite.so wants dbm emulation and the apache build takes it from db2.

mod_auth_db.so wants some Berkeley DB and gets db3 by default.

As a consequence, /usr/sbin/httpd gets dependent on both libraries.

When using mod_perl (especifically, when using Apache::ASP), if DB_File.so is needed, it fails at load time because Perl was built with db3 
and DB_FIle knows it, but its external references get satisfied dynamically by those in db2 and refuses to work.

What I did is to rebuild the apache RPMS so that it has gdbm:

LIBS='-lgdbm' \

This way src/helpers/find-dbm-lib gets happy with it and does not include a dependency on -lndbm (that ends up as a dependency on -ldb2).
On the other hand, mod_auth_db is happy with -ldb, that seems to be db3 and DB_File is happy with it.

Possibly someone who understands the DB-version policy can suggest something better.
Comment 1 Nalin Dahyabhai 2001-01-11 21:25:05 EST
Eek.  We have to switch mod_auth_dbm to DB3's dbm emulation because the
dbmmanage perl script turns out to be a db3 application which creates db3 hash

Note You need to log in before you can comment on or make changes to this bug.