Deep troubles with DB_File module

Rick Cooper rcooper at
Mon Feb 13 15:34:04 GMT 2006

> -----Original Message-----
> From: mailscanner-bounces at
> [mailto:mailscanner-bounces at]On Behalf Of Pavel
> Zichovsky
> Sent: Monday, February 13, 2006 9:49 AM
> To: mailscanner at
> Subject: Deep troubles with DB_File module
> Hi there!
> I have tried to install new SA from CLAMAV-SA pacakage on
> gcc -c -I/usr/local/BerkeleyDB/include -fno-strict-aliasing
> -I/usr/local/include -O2 -march=i386 -mcpu=i686   -DVERSION=\"1.810\"
> -DXS_VERSION=\"1.810                      \" -fPIC
> -I/usr/lib/perl5/5.6.1/i386-linux/CORE -D_NOT_CORE  -DmDB_Prefix_t=size_t
> -DmDB_Hash_t=u_int32_t   version.c
> version.c:30:16: db.h: is not file or directory <-- ROOT ERROR IS HERE
> make: *** [version.o] Error 1

Where is your db.h file located? I ask this because the DB_File
file, IIRC, defaults to /usr/local/BerkeleyDB/include and
/usr/local/BerkeleyDB/lib. This is not appropriate for many installations
and you may have to install that package manually by editing the
to point to the correct place. For instance, in my case I have to point to
/usr/local/BerkeleyDB.4.3/include and /usr/local/BerkeleyDB.4.3/lib because
I have several versions and even when I modify the DBNAME = line in the damn test programs find the .h file of one version and the
libdb*.a of another.
You may simply have to uncommnet one of the /usr/include or
/usr/local/include and lib entries.

If cpan -i DB_File also fails try:

cpan> look DB_File
which will drop you into a shell in the correct build directory. then edit
the so the paths (at the top) match the location of your db.h and
libdb*.a files. then save and run

perl Makefile.PL

if no errors then

make && make test && make install (which says run make and if no errors then
run make test, if no error make install)


This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.

More information about the MailScanner mailing list