cyradm undefined symbol: db_version

Andi Voss andi at andis.mine.nu
Sun Oct 8 04:12:13 EDT 2006


Hi,

no idea anyone?
How can I get cyradm to work?

Andi

Andi Voss schrieb:
> Hi,
>
> I'm using cyrus-sasl-2.1.22 and cyrus-imap-2.2.12 on two Slackware boxes.
> On one system everything is fine, everything works like it should be, but
> on the other system cyradm is not working at all. When I try to login
> with: #cyradm --user cyrus --server localhost --auth login
> this error appears:
>
> Can't load
> '/usr/lib/perl5/site_perl/5.8.8/i486-linux/auto/Cyrus/IMAP/IMAP.so' for
> module Cyrus::IMAP:
> /usr/lib/perl5/site_perl/5.8.8/i486-linux/auto/Cyrus/IMAP/IMAP.so:
> undefined symbol: db_version at
> /usr/lib/perl5/5.8.8/i486-linux/DynaLoader.pm line 230.
>  at /usr/lib/perl5/site_perl/5.8.8/i486-linux/Cyrus/IMAP/Admin.pm line 44
> Compilation failed in require at
> /usr/lib/perl5/site_perl/5.8.8/i486-linux/Cyrus/IMAP/Admin.pm line 44.
> BEGIN failed--compilation aborted at
> /usr/lib/perl5/site_perl/5.8.8/i486-linux/Cyrus/IMAP/Admin.pm line 44.
> Compilation failed in require at
> /usr/lib/perl5/site_perl/5.8.8/i486-linux/Cyrus/IMAP/Shell.pm line 60.
> BEGIN failed--compilation aborted at
> /usr/lib/perl5/site_perl/5.8.8/i486-linux/Cyrus/IMAP/Shell.pm line 60.
> Compilation failed in require.
> BEGIN failed--compilation aborted.
>
> login to imap is working:
> telnet localhost imap
> Trying 127.0.0.1...
> Connected to localhost.
> Escape character is '^]'.
> * OK Fax Cyrus IMAP4 v2.2.12 server ready
> . logout
> * BYE LOGOUT received
> . OK Completed
> Connection closed by foreign host.
>
> I know this error is "well known" and I spent much time to solve the
> problem but I didn't. On my other box I solved this problem with
> installing the BerkeleyDB-4.4.
> As I understand the error, the "undefined symbol: db_version at
> /usr/lib/perl5/5.8.8/i486-linux/DynaLoader.pm line 230." is the problem.
> This problem, I've located, belongs to BerkeleyDB - Am I right?
> Or is perl the problem? I've no more idea...
>
> What I did:
> installed BerkeleyDB-4.4 from source:
> ../build_unix/configure && make && make install
> ALL OK
>
> compiled cyrus-sasl:
> #./configure --enable-plain --enable-login --enable-cram --enable-digest
> --enable-sql --with-mysql=/usr/local/mysql --with-openssl=/usr/local/ssl
> --with-dblib=berkeley --with-bdb-libdir=/usr/local/BerkeleyDB.4.4/lib
> --with-bdb-incdir=/usr/local/BerkeleyDB.4.4/include
> #make && make install
> ALL OK
>
> #saslpasswd2 -c cyrus
> Password:
> Again (for verification):
> ALL OK
>
> compiled cyrus-imapd:
> #./configure --with-auth=unix --with-sasl=/usr/lib/sasl2
> --with-openssl=/usr/local/ssl --with-dblib=berkeley
> --with-bdb-libdir=/usr/local/BerkeleyDB.4.4/lib
> --with-bdb-incdir=/usr/local/BerkeleyDB.4.4/include
> #make && make install
> ALL OK
>
> #cd src/cyrus_imap/tools
> #su cyrus
> #./mkimap
> reading configure file...
> i will configure directory /var/imap.
> i saw partition /var/spool/imap.
> done
> configuring /var/imap...
> creating /var/spool/imap...
> done
>
> #perl -MCPAN -eshell
> #>install IMAP::Admin
> #>installed OK
>
> #cd /src/cyrus_imap/perl/imap
> #su cyrus
> #perl Makefile.PL
> Checking if your kit is complete...
> Looks good
> Writing Makefile for Cyrus::IMAP
> #make && make install
> ALL OK
>
> I upgraded and reinstalled perl (now 5.8.8 binary from slackware).
>
> #ldd /usr/cyrus/bin/master
> linux-gate.so.1 =>  (0xffffe000)
> libdl.so.2 => /lib/tls/libdl.so.2 (0xb7f3e000)
> libresolv.so.2 => /lib/tls/libresolv.so.2 (0xb7f29000)
> libdb-4.4.so => /usr/local/BerkeleyDB.4.4/lib/libdb-4.4.so (0xb7e49000)
> libc.so.6 => /lib/tls/libc.so.6 (0xb7d1a000)
> /lib/ld-linux.so.2 (0xb7f48000)
> libpthread.so.0 => /lib/tls/libpthread.so.0 (0xb7d08000)
>
> #ldd /usr/local/sbin/saslpasswd2
> linux-gate.so.1 =>  (0xffffe000)
> libresolv.so.2 => /lib/tls/libresolv.so.2 (0xb7ee9000)
> libsasl2.so.2 => /usr/local/lib/libsasl2.so.2 (0xb7ed3000)
> libdl.so.2 => /lib/tls/libdl.so.2 (0xb7ecf000)
> libdb-4.4.so => /usr/local/BerkeleyDB.4.4/lib/libdb-4.4.so (0xb7def000)
> libc.so.6 => /lib/tls/libc.so.6 (0xb7cc0000)
> /lib/ld-linux.so.2 (0xb7f04000)
> libpthread.so.0 => /lib/tls/libpthread.so.0 (0xb7cae000)
>
> #ls -l /lib/libdb.so
> lrwxrwxrwx 1 root root 12 2006-10-05 17:26 /lib/libdb.so -> libdb-3.1.so
>
> The only thing which is different on the two systems is that ldd contains
> linux-gate.so.1 =>  (0xffffe000) in the system where it is not working.
> linux-gate.so.1 tells that a file is not found by that name, but not which
> file.
> http://www.trilithium.com/johan/2005/08/linux-gate/
>
> Perhaps this is the problem?
> Is anybody able to help me solving this cyrus-imap/cyradm/berkeley
> problem?
>
> Thanks for help
> Andi
>
>
> ----
> Cyrus Home Page: http://cyrusimap.web.cmu.edu/
> Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki
> List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html
>




More information about the Info-cyrus mailing list