[Date Prev][Date Next] [Chronological] [Thread] [Top]

RE: sasl version mismatch



fre, 26.12.2003 kl. 11.50 skrev Howard Chu:

> > Many on this list wouldn't agree with the following, and I
> > don't want to
> > know about that (too much dissent about it ;) but:
> >
> > Compile and configure your own new stuff. Keep your own in /usr/local,
> > keep the original stuff in / or /usr and make sure the one doesn't
> > conflict with the other by compile-time options and ripping
> > out original RH rpms where necessary.
> 
> I have no problem with this policy in general, but this is not a direct
> solution to the problem at hand. This error message indicates that the
> version of the Cyrus SASL shared library that the slapd binary loaded at
> runtime is older than the one present when OpenLDAP was compiled. In
> particular, the <sasl/sasl.h> file that it found came from Cyrus SASL 2.1.17.
> This means this particular person has already gone to the trouble of building
> SASL by hand, since RedHat doesn't ship with anything so new. This also means
> that the custom-built SASL was already installed somewhere, because OpenLDAP
> could not find that <sasl/sasl.h> header otherwise.

Agreed. The thing is, that when I went over from RH 7.2 to RHEL 3 (Sept.
2003 release), I found that RedHat had included much stuff that could
cause conflicts. For example, both SASL 1 and SASL2 (2.1.15), and just
have a look at this:

1047 [root:billy.demon.nl] /etc # l /lib/*bdb*
-rwxr-xr-x    1 root     root       244192 aug 21 22:31 /lib/libdb2.so.3
-rwxr-xr-x    1 root     root       491252 aug 21 22:31
/lib/libdb-3.1.so
-rwxr-xr-x    1 root     root       682036 aug 21 22:31
/lib/libdb-3.2.so
-rwxr-xr-x    1 root     root       585652 aug 21 22:31
/lib/libdb-3.3.so
-rwxr-xr-x    1 root     root       680352 aug 21 22:31
/lib/libdb-4.0.so
-rwxr-xr-x    1 root     root       793716 aug 21 23:36
/lib/libdb-4.1.so
-rwxr-xr-x    1 root     root       244192 aug 21 22:31 /lib/libdb.so.3

Whether the header files are there or not depends on whether one
installs the dev rpms or not. I finally decided that the only way to put
my own stuff - f.ex. bdb 4.2.52 - unto the rig and ensure that it was
kept apart, was to install to /usr/local and point compiles at it.
Exceptions are intelligent stuff like mplayer, which sorts out what it
wants itself.

Goodness knows what would happen if one installs other peoples' than
RedHat's rpms onto RHEL 3 - I'd rather not find out for myself.


> So the problem is simply that the dynamic linker configuration doesn't point
> to the directory where the 2.1.17 libsasl2.so resides. Fix this by setting
> LD_LIBRARY_PATH, or using ldconfig. (Or the 2.1.17 libsasl2.so was
> overwritten when the 2.1.10 rpm was installed. Then you obviously just have
> to go and put it back.)
> 
> This isn't black magic, this is Unix 101. You should know this stuff before
> you ever rpm --install anything.

Exactly.

--Tonni

-- 
mail: billy - at - billy.demon.nl
http://billy.demon.nl