According to Timo Sirainen:
On 11.10.2012, at 9.43, dovecot@freakout.de wrote:
Dovecot code is calling str_to_time() from libmysqlclient, instead of from Dovecot's internal code. Not the first time mysql conflicted with Dovecot code. This could be worked around, but .. why is your dovecot binary linked with libmysqlclient? Only auth and dict binaries should be.
but dovecot's configure script does not allow to specify the mysql libs and headers explictly - only by global CPPFLAGS and LDFLAGS extensions, which are used for all binaries - when i tried to specify:
./configure --prefix=/opt/dovecot --sysconfdir=/etc/dovecot --mandir=/opt/dovecot/man
--docdir=/opt/dovecot/doc --libexecdir=/opt/dovecot/sbin --datadir=/opt/dovecot
--with-rundir=/var/dovecot/run --with-statedir=/var/dovecot/state
--with-mysql=/opt/mysql/bin/mysql_config
checking for ...
checking pkg-config is at least version 0.9.0... yes
configure: error: --with-mysql=path not supported. You may want to use instead:
CPPFLAGS=-I/opt/mysql/bin/mysql_config/include LDFLAGS=-L/opt/mysql/bin/mysql_config/lib ./configure --with-mysql
i followed the hint from the configure script above and run into the core-dumps due to symbol clash str_to_time.
How to work around with mysql in non-standard location?
Thanks Axel
dovecot@freakout.de wrote the following on 12.10.2012 13:50:
According to Timo Sirainen:
On 11.10.2012, at 9.43, dovecot@freakout.de wrote:
Dovecot code is calling str_to_time() from libmysqlclient, instead of from Dovecot's internal code. Not the first time mysql conflicted with Dovecot code. This could be worked around, but .. why is your dovecot binary linked with libmysqlclient? Only auth and dict binaries should be.
but dovecot's configure script does not allow to specify the mysql libs and headers explictly - only by global CPPFLAGS and LDFLAGS extensions, which are used for all binaries - when i tried to specify:
./configure --prefix=/opt/dovecot --sysconfdir=/etc/dovecot --mandir=/opt/dovecot/man
--docdir=/opt/dovecot/doc --libexecdir=/opt/dovecot/sbin --datadir=/opt/dovecot
--with-rundir=/var/dovecot/run --with-statedir=/var/dovecot/state
--with-mysql=/opt/mysql/bin/mysql_config checking for ... checking pkg-config is at least version 0.9.0... yes configure: error: --with-mysql=path not supported. You may want to use instead: CPPFLAGS=-I/opt/mysql/bin/mysql_config/include LDFLAGS=-L/opt/mysql/bin/mysql_config/lib ./configure --with-mysqli followed the hint from the configure script above and run into the core-dumps due to symbol clash str_to_time.
How to work around with mysql in non-standard location?
Thanks Axel
This one works for me for mysql in a non-standard location (my.cnf is in /etc):
CPPFLAGS='-I/opt/mysql/include/mysql' LDFLAGS='-L/opt/mysql/lib/mysql -lmysqlclient -lz -lcrypt -lnsl -lm' ./configure --with-mysql .....
Rds Tamsy
participants (2)
-
dovecot@freakout.de
-
Tamsy