Dovecot error symbol mysql_options, version libmysqlclient_16 not defined in file libmysqlclient.so.18

Condor condor at stz-bg.com
Thu Mar 3 14:56:11 UTC 2016


Hello,

Im using Dovecot version: 2.2.21 (5345f22)

Here is my conf file:

auth_debug = yes
auth_mechanisms = plain login
auth_socket_path = /usr/local/var/run/dovecot/auth-userdb
auth_verbose = yes
base_dir = /usr/local/var/run/dovecot/
debug_log_path = /var/log/dovecot.log
default_login_user = nobody
default_process_limit = 200
dict {
   driver = sql
   quota = mysql:/usr/local/etc/dovecot/dovecot-dict-sql.conf.ext
}
mail_debug = yes
mail_location = maildir:/var/mailq/postmail/%d/%n/Maildir
mail_privileged_group = vmail
managesieve_notify_capability = mailto
managesieve_sieve_capability = fileinto reject envelope 
encoded-character vacation subaddress comparator-i;ascii-numeric 
relational regex imap4flags copy include variables body enotify envir
onment mailbox date index ihave duplicate mime foreverypart extracttext
namespace inbox {
   inbox = yes
   location =
   mailbox Drafts {
     special_use = \Drafts
   }
   mailbox Junk {
     special_use = \Junk
   }
   mailbox Sent {
     special_use = \Sent
   }
   mailbox "Sent Messages" {
     special_use = \Sent
   }
   mailbox Trash {
     special_use = \Trash
   }
   prefix =
}
passdb {
   args = /usr/local/etc/dovecot/dovecot-sql.conf.ext
   driver = sql
}
passdb {
   args = /usr/local/etc/dovecot/dovecot-sql.conf.ext
   driver = sql
}
plugin {
   autocreate = Trash
   autocreate2 = Junk
   autocreate3 = Sent
   autocreate4 = Drafts
   autosubscribe = Trash
   autosubscribe2 = Junk
   autosubscribe3 = Sent
   autosubscribe4 = Drafts
   sieve = /var/mailq/postmail/%d/%n/.dovecot.sieve
   sieve_dir = /var/mailq/postmail/%d/%n/sieve/
   sieve_global_dir = /usr/local/var/lib/dovecot/sieve
   sieve_global_path = /usr/local/var/lib/dovecot/sieve/default.sieve
   sieve_max_actions = 32
   sieve_max_redirects = 15
   sieve_quota_max_scripts = 20
}
protocols = pop3 imap sieve
service auth {
   unix_listener /var/spool/postfix/private/auth {
     group = postfix
     mode = 0666
     user = postfix
   }
}
service imap-login {
   inet_listener imap {
     port = 143
   }
   inet_listener imaps {
     port = 993
   }
}
service managesieve-login {
   inet_listener sieve {
     port = 4190
   }
   service_count = 1
   vsz_limit = 64 M
}
ssl_cert = </etc/postfix/ssl/certs/dovecot.pem
ssl_key = </etc/postfix/ssl/private/dovecot.pem
userdb {
   args = uid=1003 gid=1001 home=/var/mailq/postmail/%d/%n 
allow_all_users=yes
   driver = static
}
userdb {
   args = /usr/local/etc/dovecot/dovecot-sql.conf.ext
   driver = sql
}
protocol pop3 {
   pop3_uidl_format = %08Xu%08Xv
}
protocol lmtp {
   mail_plugins = " sieve"
}
protocol lda {
   mail_plugins = " sieve"
}
protocol imap {
   imap_max_line_length = 64 k
   mail_max_userip_connections = 200
   mail_plugins = " autocreate"
}
protocol sieve {
   managesieve_implementation_string = Dovecot Pigeonhole
}

dovecot-sql. conf

grep -v '^ *\(#.*\)\?$' dovecot-sql.conf.ext
driver = mysql
connect = host=localhost dbname=postfix user=xxx password=xxx
default_pass_scheme = CRYPT
password_query = SELECT username AS user, password FROM mailbox WHERE 
username = '%u';



I get follow error:

dovecot: auth-worker: Error: dovecot/auth: relocation error: 
dovecot/auth: symbol mysql_options, version libmysqlclient_16 not 
defined in file libmysqlclient.so.18 with link time reference


I delete all binary and libs and source code, download again and compile 
with option with-mysql and always got the same error when I start it:

dovecot: auth-worker: Error: dovecot/auth: relocation error: 
dovecot/auth: symbol mysql_options, version libmysqlclient_16 not 
defined in file libmysqlclient.so.18 with link time reference
Mar  3 16:50:56 mailcontrol dovecot: master: Error: 
service(auth-worker): command startup failed, throttling for 60 secs
Mar  3 16:50:56 mailcontrol dovecot: auth-worker(3276): Fatal: master: 
service(auth-worker): child 3276 returned error 127
Mar  3 16:50:56 mailcontrol dovecot: auth: Error: auth worker: Aborted 
PASSV request for xxx at xxx: Worker process died unexpectedly


I even check with ldd is there any banary that use libmysqlclient.16.so 
but did not found.

ldd auth is linked  libmysqlclient.so.18 => 
/usr/lib64/libmysqlclient.so.18 (0x00007fad84696000)



I use kernel 4.4.3, gcc 5.3.0
$ gcc -v
Reading specs from /usr/lib64/gcc/x86_64-slackware-linux/5.3.0/specs
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-slackware-linux/5.3.0/lto-wrapper
Target: x86_64-slackware-linux
Configured with: ../gcc-5.3.0/configure --prefix=/usr 
--libdir=/usr/lib64 --mandir=/usr/man --infodir=/usr/info 
--enable-shared --enable-bootstrap 
--enable-languages=ada,c,c++,fortran,go,java,lto,objc 
--enable-threads=posix --enable-checking=release --enable-objc-gc 
--with-system-zlib --with-python-dir=/lib64/python2.7/site-packages 
--enable-libstdcxx-dual-abi --with-default-libstdcxx-abi=gcc4-compatible 
--disable-libunwind-exceptions --enable-__cxa_atexit --enable-libssp 
--enable-lto --enable-install-libiberty --with-gnu-ld --verbose 
--enable-java-home --with-java-home=/usr/lib64/jvm/jre 
--with-jvm-root-dir=/usr/lib64/jvm 
--with-jvm-jar-dir=/usr/lib64/jvm/jvm-exports 
--with-arch-directory=amd64 
--with-antlr-jar=/tmp/gcc/antlr-runtime-3.4.jar --enable-java-awt=gtk 
--disable-gtktest --disable-multilib --target=x86_64-slackware-linux 
--build=x86_64-slackware-linux --host=x86_64-slackware-linux
Thread model: posix
gcc version 5.3.0 (GCC)

Mysql version: mysql  Ver 15.1 Distrib 10.0.24-MariaDB, for Linux 
(x86_64) using readline 5.1

Glibc version 2.23


any one can help me to understand whats happaened ?


HS


More information about the dovecot mailing list