RE: [Exim] db.h not found??

Top Page
Delete this message
Reply to this message
Author: Karl Schmidt
Date:  
To: exim-users
Subject: RE: [Exim] db.h not found??
Does anyone in this list have exim-3.22 working under Hedhat7 ???

I tried putting

USE-DB=yes
INCLUDE=-I/lib/libdb-3.1.so
DBMLIB=/usr/lib/libdb1.a

And a variation of USE_DB=yes

Dugg a little deeper - it is always defaulting to yes anyway???

Tried setting USE_DB=no

Both in exim-3.22/Local/Makefile

And in the build directory

Still no joy

I am not clear on the sytax of the INCLUDE=-I/lib/libdb-3.1.so What does the
'-I' mean?


Saw this

/* This file had its name changed from db.h to dbfn.h because BSDI (for one)
has a file in /usr/include called db.h which gets called from inside
/usr/include/ndbm.h. In fact, db.h is the standard header for Berkeley DB,
which in its latest incarnation also has functions that start db_. To avoid
problems with this, all Exim's db_ names have now been changed to start with
dbfn_ or dbdata_ instead. */


/* Additional code (courtesy of Nigel Metheringham) added so that either
ndbm
or Berkeley db 1.x in native mode can be used for the db files. This is
selected on the USE_DB define. All the db functions that are used by Exim
are
redefined as macros. Subsequently further macros were added to permit the
use
of Berkeley DB 2.x, and 3.x, which can be distinguished automatically from
1.x.
Later still, additional code (courtesy of James Antill) has been added to
support the use of tdb as yet another alternative DBM library. */

hellllllppppp!!!


On Wed, 7 Mar 2001, Karl Schmidt wrote:

> You must NOT set USE_DB for gdbm.
> [KPS] I didn't - but look at:
>
> rpm -qa | grep db1
> db1-1.85-4
> db1-devel-1.85-4


I am not a Linux person. I'm not experienced in all this RPM stuff.
Looks like you have DB 1.85, which is very old.

> rpm -qa | grep gdb
> gdbm-1.8.0-5
> gdbm-devel-1.8.0-5
> xxgdb-1.12-16
> gdb-5.0-7


Heck, and some gdbm stuff.

> rpm -qa | grep db3
> db3-3.1.14-6


And DB3.

> What is the syntax of USE_DB ? is it USE_DB=yes ?


Yes. Probably best to make it use DB3, but you'll have to make sure you
get the correct db.h. I have several DBMs installed on my system for
testing, but I keep them in separate directories. My Local/Makefile
contains

USE_DB=yes
INCLUDE=-I/opt/local/include/db-3
DBMLIB=/opt/local/lib/db-3/libdb.a

when I want to use DB3 (but I'm using Solaris 8, not Linux).

--
Philip Hazel            University of Cambridge Computing Service,
ph10@???      Cambridge, England. Phone: +44 1223 334714.