Package: libmariadbclient-dev Version: 10.1.21-5 Severity: serious % dpkg --list | grep mariadb ii libmariadbclient-dev 10.1.21-5 amd64 MariaDB database development files ii libmariadbclient18:amd64 10.1.21-5 amd64 MariaDB database client library
% grep Libs /usr/share/pkgconfig/mariadb.pc Libs: -L${libdir} -lmysqlclient -lpthread -lz -lm -ldl % grep mysqlclient /usr/bin/mysql_config libs="-L$pkglibdir -lmysqlclient -lpthread -lz -lm -ldl" The hardcoded -lmysqlclient is wrong in this situation though: % cat > demo.c << EOF #include <stdio.h> #include <mysql.h> MYSQL *conn; void main(int argc, char *argv[]) { conn = mysql_init(NULL); mysql_close(conn); } EOF % gcc -o demo demo.c $(pkg-config --cflags mariadb) $(pkg-config --libs mariadb) /usr/bin/ld: cannot find -lmysqlclient collect2: error: ld returned 1 exit status % gcc -o demo demo.c $(mysql_config --cflags) $(mysql_config --libs) /usr/bin/ld: cannot find -lmysqlclient collect2: error: ld returned 1 exit status If invoked with manually provided -lmariadbclient it's fine though: % gcc -o demo demo.c $(pkg-config --cflags mariadb) -lmariadbclient % gcc -o demo demo.c $(mysql_config --cflags) -lmariadbclient As an alternative/workaround installing the default-libmysqlclient-dev + libmariadbclient-dev-compat packages also fixes the problem with -lmysqlclient usage. This clearly shouldn't reach the stable stretch release as is, IMO. regards, -mika-