When using mariadb-10.3.38, after upgrading Openssl from 1.1.1 to 3.1 strange compilation errors occur
Hi Team, When using mariadb-10.3.38, after upgrading Openssl from 1.1.1 to 3.1 strange compilation errors occur. /xxxx/bin/ld: ../build/lib/libyyyy.so: undefined reference to `server_mysql_error' /xxxx/bin/ld: ../build/lib/libyyyy.so: undefined reference to `server_mysql_fetch_row' /xxxx/bin/ld: ../build/lib/libyyyy.so: undefined reference to `server_mysql_num_rows' /xxxx/bin/ld: ../build/lib/libyyyy.so: undefined reference to `server_mysql_select_db' /xxxx/bin/ld: ../build/lib/libyyyy.so: undefined reference to `server_mysql_num_fields' /xxxx/bin/ld: ../build/lib/libyyyy.so: undefined reference to `server_mysql_real_connect' /xxxx/bin/ld: ../build/lib/libyyyy.so: undefined reference to `server_mysql_close' /xxxx/bin/ld: ../build/lib/libyyyy.so: undefined reference to `server_mysql_init' /xxxx/bin/ld: ../build/lib/libyyyy.so: undefined reference to `server_mysql_free_result' /xxxx/bin/ld: ../build/lib/libyyyy.so: undefined reference to `server_mysql_store_result' collect2: error: ld returned 1 exit status make[1]: *** [../rules.Make:461: cli] Error 1 libyyyy.so uses shared library libmysqlclient.so and both of them use mysql_xxxx. I don't know why prefix "server_" is added. I found a simliar issue where valgrind is used. But in my scenario valgrind is not used. https://jira.mariadb.org/browse/MDEV-28958?page=com.atlassian.jira.plugin.sy... Any constructive suggestions are welcomed. Many thanks in advance. Regards, Allen
On Thu, Nov 16, 2023 at 4:05 PM Ma Zhenhua via discuss
Hi Team,
When using mariadb-10.3.38, after upgrading Openssl from 1.1.1 to 3.1 strange compilation errors occur.
MariaDB-10.3 shouldn't be able to compile/run with openssl-3.0+, that should start at 10.5.
/xxxx/bin/ld: ../build/lib/libyyyy.so: undefined reference to `server_mysql_error' /xxxx/bin/ld: ../build/lib/libyyyy.so: undefined reference to `server_mysql_fetch_row' /xxxx/bin/ld: ../build/lib/libyyyy.so: undefined reference to `server_mysql_num_rows' /xxxx/bin/ld: ../build/lib/libyyyy.so: undefined reference to `server_mysql_select_db' /xxxx/bin/ld: ../build/lib/libyyyy.so: undefined reference to `server_mysql_num_fields' /xxxx/bin/ld: ../build/lib/libyyyy.so: undefined reference to `server_mysql_real_connect' /xxxx/bin/ld: ../build/lib/libyyyy.so: undefined reference to `server_mysql_close' /xxxx/bin/ld: ../build/lib/libyyyy.so: undefined reference to `server_mysql_init' /xxxx/bin/ld: ../build/lib/libyyyy.so: undefined reference to `server_mysql_free_result' /xxxx/bin/ld: ../build/lib/libyyyy.so: undefined reference to `server_mysql_store_result' collect2: error: ld returned 1 exit status make[1]: *** [../rules.Make:461: cli] Error 1
libyyyy.so uses shared library libmysqlclient.so and both of them use mysql_xxxx. I don't know why prefix "server_" is added.
Is libyyyy.so a server plugin or a client plugin? The way its compiled and looking for the above symbols looks like a server plugin. Take a look at plugin/test_sql_service/* if a server plugin that does SQL is required. server_mysql* is an internal server interface to the layer, like the client interfaces, so server plugins can do client like SQL queries. The sql service got backported to 10.4 - MDEV-27595, but it's not in the unmaintained 10.3 also see a few soon to be fixed server bugs: * MDEV-32808 * MDEV-32818
I found a simliar issue where valgrind is used. But in my scenario valgrind is not used.
https://jira.mariadb.org/browse/MDEV-28958?page=com.atlassian.jira.plugin.sy...
Any constructive suggestions are welcomed. Many thanks in advance.
Regards, Allen _______________________________________________ discuss mailing list -- discuss@lists.mariadb.org To unsubscribe send an email to discuss-leave@lists.mariadb.org
participants (2)
-
Daniel Black
-
Ma Zhenhua