[MDEV-13208] Cannot import libmariadbclient.so.18 from python Created: 2017-06-29 Updated: 2019-04-02 Resolved: 2017-09-21 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | Platform Debian |
| Affects Version/s: | 10.1.23 |
| Fix Version/s: | 10.1.27 |
| Type: | Bug | Priority: | Major |
| Reporter: | Emilien Mantel | Assignee: | Sergei Golubchik |
| Resolution: | Fixed | Votes: | 2 |
| Labels: | None | ||
| Environment: |
Debian Stretch |
||
| Issue Links: |
|
||||||||||||
| Description |
|
Hi! I have some problems with MariaDB 10.1 (from your repositories). I can't use the python MySQLDb lib. I don't have any problems on Jessie (Debian or MariaDB repo) or Stretch (Debian repo).
We can bypass the problem by importing latest version of the lib with pip.
Cheers! Emilien |
| Comments |
| Comment by Sergei Golubchik [ 2017-06-29 ] | |||||||||||||||||||
|
You're using MySQLdb from stretch, and our 10.1 packages. Debian renamed the client library to libmariadbclient.so. And MySQLdb was built with that. Our 10.1 packages still use libmysqlclient, they provide libmysqlclient.so, our 10.2 packages come with MariaDB Connector/C and provide libmariadb.so (with symlinks to libmysqlclient.so). Now we need to build our packages to be compatible with stretch. This means libmariadbclient.so symlink and libmariadbclient_18 version nodes... | |||||||||||||||||||
| Comment by Niels Hendriks [ 2017-06-30 ] | |||||||||||||||||||
|
Hi, I'm having a similar issue, though not exactly the same. I'm using Debian 8 with MariaDB 10.2 and I see the following error:
I have the following package installed:
I can see with a strace it is trying to access this file: /usr/lib/x86_64-linux-gnu/libmysqlclient.so.18 - this file does exist, but it is a symlink:
However, libmysqlclient_r.so.18.0.0 does not exist, so it is a broken symlink:
As far as I can see, there is a libmariadbclient-dev package supplied by the MariaDB 10.2 repo, but this does not include the libmysqlclient libraries, only the libmariadbclient libraries. I have the following python-mysqldb version:
| |||||||||||||||||||
| Comment by Sergei Golubchik [ 2017-06-30 ] | |||||||||||||||||||
|
nielsh, your issue is different. This one is about 10.1, that does not have libmariadbclient.so. Yours is about 10.2 that does not have libmysqlclient.so. This looks more like | |||||||||||||||||||
| Comment by Sergei Golubchik [ 2017-09-19 ] | |||||||||||||||||||
|
Added symlinks, but not version nodes. Reopened, sorry | |||||||||||||||||||
| Comment by Otto Kekäläinen [ 2019-04-02 ] | |||||||||||||||||||
|
Related to this, in Debian packaging we test on every commit that this Python module compiles and works:
Upstream mariadb client libs packaging has a bunch of shortcomings which I think most of are now fixed in the Debian version of MariaDB 10.3 (example: https://salsa.debian.org/mariadb-team/mariadb-10.3/commit/a02149c83bdbeab391ab331b34f28b2bf8352728) and I indend to upstream these into 10.4 (current development branch) this week. |