[debian-mysql] Bug#917266: default-libmysqlclient-dev: Uninstallable - depends on no longer built libmariadbclient-dev-compat

Scott Kitterman debian at kitterman.com
Tue Dec 25 08:02:54 GMT 2018

Package: default-libmysqlclient-dev
Version: 1.0.4
Severity: grave
Justification: renders package unusable

<mysql.h> no longer found.

Since mariadb10.3 became the default this no longer works:

#include <mysql.h>

It has to be changed to:

#include <mariadb/mysql.h>

You can experience this for yourself by rebuilding postfix, seeing it fail:

gcc -fPIC -I. -I../../include -DDEBIAN -DHAS_PCRE -DHAS_LDAP -DUSE_LDAP_SASL -DHAS_SQLITE -DMYORIGIN_FROM_FILE -DHAS_CDB -DHAS_LMDB -DHAS_MYSQL -I/usr/include/mysql -DHAS_PGSQL -I/usr/include/postgresql -DHAS_SQLITE -I/usr/include -DHAS_SSL -I/usr/include/openssl -DUSE_SASL_AUTH -I/usr/include/sasl -DUSE_CYRUS_SASL -DUSE_TLS -I/usr/include -DHAS_DEV_URANDOM -DDEF_DAEMON_DIR=\"/usr/lib/postfix/sbin\" -DDEF_HTML_DIR=\"/usr/share/doc/postfix/html\" -DDEF_MANPAGE_DIR=\"/usr/share/man\" -DDEF_README_DIR=\"/usr/share/doc/postfix\" -DUSE_DYNAMIC_LIBS -DUSE_DYNAMIC_MAPS -Wmissing-prototypes -Wformat -Wno-comment -fPIC -g -O2 -I. -I../../include -DLINUX3 -c dict_ldap.c
gcc -shared -Wl,--enable-new-dtags -Wl,-rpath,/usr/lib/postfix -o postfix-ldap.so dict_ldap.o -lldap -llber -L../../lib -L. -lpostfix-util -lpostfix-global
gcc -fPIC -I. -I../../include -DDEBIAN -DHAS_PCRE -DHAS_LDAP -DUSE_LDAP_SASL -DHAS_SQLITE -DMYORIGIN_FROM_FILE -DHAS_CDB -DHAS_LMDB -DHAS_MYSQL -I/usr/include/mysql -DHAS_PGSQL -I/usr/include/postgresql -DHAS_SQLITE -I/usr/include -DHAS_SSL -I/usr/include/openssl -DUSE_SASL_AUTH -I/usr/include/sasl -DUSE_CYRUS_SASL -DUSE_TLS -I/usr/include -DHAS_DEV_URANDOM -DDEF_DAEMON_DIR=\"/usr/lib/postfix/sbin\" -DDEF_HTML_DIR=\"/usr/share/doc/postfix/html\" -DDEF_MANPAGE_DIR=\"/usr/share/man\" -DDEF_README_DIR=\"/usr/share/doc/postfix\" -DUSE_DYNAMIC_LIBS -DUSE_DYNAMIC_MAPS -Wmissing-prototypes -Wformat -Wno-comment -fPIC -g -O2 -I. -I../../include -DLINUX3 -c dict_mysql.c
dict_mysql.c:171:10: fatal error: mysql.h: No such file or directory
 #include <mysql.h>
compilation terminated.

And then changing src/global/dict_mysql.c line 171

Alternately, I could update the include path, I guess, but isn't approximately
the whol point of providing a generic default so that every package in
Debian doesn't have to change when the default changes?

Scott K

More information about the pkg-mysql-maint mailing list