Having issues getting DBD::mysql installed on Debian. This is actually the Debian-based Apache docker image which comes with Perl 5.36. Despite pre-installing libdbd-mysql-perl, libmariadb-dev, libmariadbdev-compat and every other seemingly related package, I am still getting the following build failure:
Running Mkbootstrap for mysql ()
chmod 644 "mysql.bs"
"/usr/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- mysql.bs blib/arch/auto/DBD/mysql/mysql.bs 644
x86_64-linux-gnu-gcc -c -I/usr/local/lib/x86_64-linux-gnu/perl/5.36.0/auto/DBI -I/usr/include/mariadb -I/usr/include/mariadb/mysql -g -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g -DVERSION=\"5.001\" -DXS_VERSION=\"5.001\" -fPIC "-I/usr/lib/x86_64-linux-gnu/perl/5.36/CORE" dbdimp.c
dbdimp.c: In function 'mysql_dr_connect':
dbdimp.c:1407:31: error: 'MYSQL_OPT_GET_SERVER_PUBLIC_KEY' undeclared (first use in this function); did you mean 'MYSQL_SERVER_PUBLIC_KEY'?
1407 | mysql_options(sock, MYSQL_OPT_GET_SERVER_PUBLIC_KEY, &server_get_pubkey);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| MYSQL_SERVER_PUBLIC_KEY
dbdimp.c:1407:31: note: each undeclared identifier is reported only once for each function it appears in
dbdimp.c:1464:22: error: 'SSL_MODE_PREFERRED' undeclared (first use in this function)
1464 | ssl_mode = SSL_MODE_PREFERRED;
| ^~~~~~~~~~~~~~~~~~
dbdimp.c:1466:26: error: 'SSL_MODE_VERIFY_IDENTITY' undeclared (first use in this function)
1466 | ssl_mode = SSL_MODE_VERIFY_IDENTITY;
| ^~~~~~~~~~~~~~~~~~~~~~~~
dbdimp.c:1468:26: error: 'SSL_MODE_VERIFY_CA' undeclared (first use in this function)
1468 | ssl_mode = SSL_MODE_VERIFY_CA;
| ^~~~~~~~~~~~~~~~~~
dbdimp.c:1470:26: error: 'SSL_MODE_REQUIRED' undeclared (first use in this function)
1470 | ssl_mode = SSL_MODE_REQUIRED;
| ^~~~~~~~~~~~~~~~~
dbdimp.c:1471:37: error: 'MYSQL_OPT_SSL_MODE' undeclared (first use in this function); did you mean 'MYSQL_OPT_SSL_CRL'?
1471 | if (mysql_options(sock, MYSQL_OPT_SSL_MODE, &ssl_mode) != 0) {
| ^~~~~~~~~~~~~~~~~~
| MYSQL_OPT_SSL_CRL
dbdimp.c:1480:37: error: 'SSL_MODE_DISABLED' undeclared (first use in this function)
1480 | unsigned int ssl_mode = SSL_MODE_DISABLED;
| ^~~~~~~~~~~~~~~~~
dbdimp.c: In function 'mysql_st_prepare':
dbdimp.c:2407:24: warning: assignment to 'my_bool *' {aka 'char *'} from incompatible pointer type '_Bool *' [-Wincompatible-pointer-types]
2407 | bind->is_null= &(fbind->is_null);
| ^
dbdimp.c: In function 'mysql_describe':
dbdimp.c:3198:22: warning: assignment to 'my_bool *' {aka 'char *'} from incompatible pointer type '_Bool *' [-Wincompatible-pointer-types]
3198 | buffer->is_null= &(fbh->is_null);
| ^
dbdimp.c:3199:20: warning: assignment to 'my_bool *' {aka 'char *'} from incompatible pointer type '_Bool *' [-Wincompatible-pointer-types]
3199 | buffer->error= (bool*) &(fbh->error);
| ^
dbdimp.c: In function 'mysql_db_quote':
dbdimp.c:4646:12: warning: implicit declaration of function 'mysql_real_escape_string_quote'; did you mean 'mysql_real_escape_string'? [-Wimplicit-function-declaration]
4646 | sptr+= mysql_real_escape_string_quote(imp_dbh->pmysql, sptr,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| mysql_real_escape_string
make: *** [Makefile:358: dbdimp.o] Error 1
DVEEDEN/DBD-mysql-5.001.tar.gz
/usr/bin/make -- NOT OK
Seems SSL related perhaps, but openssl is up to date.