It appears the issue is MySQL 8.0.13 apparently(?) removed the mysql_init symbol.

poudriere logs:
http://home.lerctr.org:8888/jail.html?mastername=p120amd64-host-ports

the first build is 8.0.12, the 2nd is 8.0.13.

Can the dovecot guys look as well?  I've sent a note to the MySQL maintainer for FreeBSD as well.

Thanks.

On Tue, Jan 15, 2019 at 1:15 AM Odhiambo Washington <odhiambo@gmail.com> wrote:


On Tue, 15 Jan 2019 at 04:57, Larry Rosenman <larryrtx@gmail.com> wrote:
I got a complaint from a FreeBSD user that they couldn't compile dovecot against MySQL 8.0.

Is MySQL 8.0 support with 2.3.4?

they receive: 
checking for mysql_init in -lmysqlclient... no
configure: error: Can't build with MySQL support: libmysqlclient not
  found ===>  Script "configure" failed unexpectedly.
Please report the problem to ler@FreeBSD.org [maintainer] and attach the
"/wrkdirs/usr/ports/mail/dovecot/work/dovecot-2.3.4/config.log"
  including the output of the failure of your make command. Also, it
  might be a good idea to provide an overview of all packages installed
  on your system (e.g. a /usr/local/sbin/pkg-static info -g -Ea).
*** Error code 1

thanks!

I recently installed FreeBSD-12 and installed MySQL-8.0 and build dovecot-2.3.4 against it.
Well, I tried to do ldd /usr/local/sbin/dovecot to see what it's build against, but it shows different
output than what I see when I do the same against my Exim. Maybe it's a gcc vs clang issue, but

root@gw:/usr/home/wash # uname -msrsv
FreeBSD 12.0-RELEASE FreeBSD 12.0-RELEASE r341666 GENERIC  amd64
root@gw:/usr/home/wash # mysql --version
mysql  Ver 8.0.12 for FreeBSD12.0 on amd64 (Source distribution)
root@gw:/usr/home/wash # strings /usr/local/sbin/dovecot | grep SQL
SQL drivers: mysql postgresql sqlite

In the output you've given, let's just say the issue is that there is no libmysqlclient.so.21 in the standard INCLUDE path..

I have just extracted dovecot-2.3.4 into a directory and did:
 ./configure --with-mysql=yes

The output is:

-----------8<------------
checking for mysql_config... mysql_config
checking for mysql_init in -lmysqlclient... yes
checking mysql.h usability... yes
checking mysql.h presence... yes
checking for mysql.h... yes
checking for mysql_ssl_set in -lmysqlclient... yes
----------8<--------------
Install prefix . : /usr/local
File offsets ... : 64bit
I/O polling .... : kqueue
I/O notifys .... : kqueue
SSL ............ : yes (OpenSSL)
GSSAPI ......... : no
passdbs ........ : static passwd passwd-file pam checkpassword sql
CFLAGS ......... : -std=gnu99 -g -O2 -fstack-protector-strong -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -Wall -W -Wmissing-prototypes -Wmissing-declarations -Wpointer-arith -Wchar-subscripts -Wformat=2 -Wbad-function-cast -Wno-duplicate-decl-specifier -Wstrict-aliasing=2
                 : -shadow -bsdauth -sia -ldap -vpopmail
userdbs ........ : static prefetch passwd passwd-file checkpassword sql
                 : -ldap -vpopmail
SQL drivers .... : mysql
                 : -pgsql -sqlite -cassandra
Full text search : squat
                 : -lucene -solr
root@gw:/usr/local/SRC/dovecot-2.3.4 #


So, yes, it's supported!


--
Best regards,
Odhiambo WASHINGTON,
Nairobi,KE
+254 7 3200 0004/+254 7 2274 3223
"Oh, the cruft.", grep ^[^#] :-)


--
Larry Rosenman                     http://www.lerctr.org/~ler
Phone: +1 214-642-9640 (c)     E-Mail: larryrtx@gmail.com
US Mail: 5708 Sabbia Dr, Round Rock, TX 78665-2106