All (who are interested in OpenLDAP),

(long and complicated explanation of how I installed OpenLDAP today follows)

This info might not be that interesting to you, or you might already
know this - BUT:

If you've installed KDE in RedHat 9 (in fact if you've installed a full
install of RH9), then you'll notice that /usr/lib/sasl2 has a HUGE
number of plugin libraries in it. Most of them just aren't needed - as I
discovered to my cost when I installed OpenLDAP 2.2.x via source to my
RedHat box.

Why is this a problem? Well, when I started up slapd -d 255 I got the
error message:

[root@ernie usr]# /usr/local/libexec/slapd -d255
@(#) $OpenLDAP: slapd 2.2.4 (Jan 3 2004 08:44:26) $
daemon_init: listen on ldap:///
daemon_init: 1 listeners to open...
daemon: IPv6 socket() failed errno=97 (Address family not supported by
daemon: initialized ldap:///
daemon_init: 2 listeners opened
slapd init: initiated server.
QPaintDevice: Must construct a QApplication before a QPaintDevice

Memory usage summary: heap total: 0, heap peak: 0, stack peak: 0
total calls total memory failed calls
malloc| 0 0 0
realloc| 0 0 0 (in place: 0, dec: 0)
calloc| 0 0 0
free| 0 0
Histogram for block sizes:

[program stops]

To resolve this problem I actually had to grab the cyrus-sasl tarball,
then compile it into /usr/local Nicely enough, it puts a bare bones
install of plugins into /usr/local/lib/sasl2. To work around my little
problem I just ran the following:

env SASL_PATH=/usr/local/lib/sasl2
export SASL_PATH

Anyway, I hope that possibly somebody out there might find this useful.
Another problem I encountered, btw, was with Berkeley DB 4.2 and
OpenLDAP 2.2.x (the latest and greatest). It appears that when you
install BDB 4.2 it doesn't automatically copy the db.h file to
/usr/include - therefore configure in OpenLDAP says it can't find a
compatible DB, even though it finds DB4.2 as a library. Go figure.

For people's reference (and to help with search engines like google who
index the newsgroups) the error message you will see will look something
like this:

checking for Berkeley DB thread support... yes
checking Berkeley DB version for BDB backend... no
configure: error: BDB: BerkeleyDB version incompatible

Hey, at least I know how:

a. the configure script for openldap works (ugh), and
b. a better understanding of gdb and the plugin authentication structure
of cyrus-sasl