SUMMARY: Problem compiling sendmail 8.8.8 on 2.6 with Berkeley DB 1.85

From: Joel Turoff (
Date: Sat Jan 03 1998 - 10:13:19 CST


Many thanks to all who responded to my post. It turns out I forgot to add
-ldb to my Makefile, which is why the compilation died.

I thought it might be helpful to outline the steps I had to take to compile
Sendmail 8.8.8 on Solaris 2.6 with the Berkeley 1.85 DB library.

1. Compiling db:

I used the db.1.85/PORT/sunos.5.2 directory to build the db libraries. In
the file include/db.h, I had to comment out the following three lines:

/*typedef __signed char int8_t;i*/
/*typedef short int16_t; */
/*typedef int int32_t; */

The make command generated a binary called libdb.a. I put a copy of this
library in /usr/ucblib. I also copied include/db.h to /usr/local/include.

Then I modified the Sendmail Makefile thus:

CC= /usr/local/bin/gcc

# define the database mechanism used for alias lookups:
# -DNDBM -- use new DBM
# -DNEWDB -- use new Berkeley DB
# -DNIS -- include NIS support
# The really old (V7) DBM library is no longer supported.
# See READ_ME for a description of how these flags interact.

# environment definitions (e.g., -D_AIX3)

# see also conf.h for additional compilation flags

# include directories

# library directories

# libraries required on your system
# delete -l44bsd if you are not running BIND 4.9.x
LIBS= -lresolv -lsocket -lnsl -lkstat -ldb

and at the very bottom:

NROFF= nroff -h
#NROFF= groff -Tascii
MANDOC= -man

I typed make and then make install and shazam - sendmail is compiled!


This archive was generated by hypermail 2.1.2 : Fri Sep 28 2001 - 23:12:30 CDT