Hello I having some strange linking problems. I am trying to build Cyrus 2.1.2 IIMAP server using BerkeleyDB 4.0 and SASL 2.1.2 on a RedHat 7.1 box. I installed BerkeleyDB and SASL without problem by doing the following.
Set up links: ln -s /usr/local/BerkeleyDB.4.0/libdb4.a /usr/lib/lib/libdb4.a ln -s /usr/local/BerkeleyDB.4.0/libdb4.la /usr/lib/lib/libdb4.la ln -s /usr/local/BerkeleyDB.4.0/libdb4.so /usr/lib/lib/libdb4.so added /usr/local/BerkeleyDB4.0/lib to /etc/ld.so.conf rand ldconfig set the LD_RUN_PATH=/usr/local/BerkeleyDB.4.0 ran the following: CPPFLAGS=-I/usr/local/BerkeleyDB.4.0/include LDFLAGS=-L/usr/local/BerkeleyDB.4.0/lib ./configure --disable-krb4 --disable- sieve --libdir=/usr/local/BerkeleyDB.4.0 --with-dbdir=/usr/local/BerkeleyDB.4.0/ During the final phase of make I see the linker do the following: gcc -L/usr/local/BerkeleyDB.4.0//lib -Wl,-rpath,/usr/local/BerkeleyDB.4.0//lib - L/usr/local/BerkeleyDB.4.0//lib -L/usr/local/lib -Wl,-rpath,/usr/local/lib -L/us r/local/BerkeleyDB.4.0/lib -Wall -g -O2 -o imapd \ ../master/service.o pushstats.o imapd.o index.o tls.o version.o libimap.a ../ac ap/libacap.a ../lib/libcyrus.a -L/usr/lib/sasl/lib -Wl,-rpath,/usr/lib/sasl/li b -lsasl2 -lrt -ldl -lssl -lcrypto -ldb-3.1 -lresolv ../et/libcom_err.a -lw rap -lnsl Now when I fired up "/usr/cyrus/bin/master&" and tail the imapd.log file I see: Mar 20 23:23:23 birdbrain master[25255]: process 25257 exited, status 75 Mar 20 23:23:23 birdbrain tls_prune[25259]: incorrect version of Berkeley db: co mpiled against 4.0.14, linked against 3.1.14 Of course when I run ldd on /usr/cyrus/bin/master I get the following: [root@birdbrain cyrus-imapd-2.1.2]# ldd /usr/cyrus/bin/master libdl.so.2 => /lib/libdl.so.2 (0x4001e000) libssl.so.0 => /usr/lib/libssl.so.0 (0x40021000) libcrypto.so.0 => /usr/lib/libcrypto.so.0 (0x4004f000) libdb-3.1.so => /lib/libdb-3.1.so (0x40107000) libresolv.so.2 => /lib/libresolv.so.2 (0x40183000) libc.so.6 => /lib/libc.so.6 (0x40195000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000) Can someone help me to figure out why despite all the measure I am taking to make cyrus link against the the version 4 BerkeleyDB libraries it only gets linked against the version 3 libraries? I appreciate any help I could get with this. Thank you.