[debian-mysql] Bug#759309: Bug#759309: Must not Provide: libmysqlclient-dev

Lisandro Damián Nicanor Pérez Meyer perezmeyer at gmail.com
Tue Aug 26 12:37:01 UTC 2014


On Tuesday 26 August 2014 08:40:27 Otto Kekäläinen wrote:
> 2014-08-26 6:08 GMT+03:00 Lisandro Damián Nicanor Pérez Meyer
[snip] 
> > [0]
> > <https://buildd.debian.org/status/fetch.php?pkg=qt4-x11&arch=arm64&ver=4%
> > 3A4.8.6%2Bgit64-g5dc8b2b%2Bdfsg-1&stamp=1409020017>
> I can see the log has the line:
>     g++ -Wl,-O1 -o mysql_r mysql.o     -lfontconfig
> -L/usr/lib/aarch64-linux-gnu -lmariadbclient_r -lpthread -lz -lm -lssl
> -lcrypto -ldl -lmysqlclient_r
>     /usr/bin/ld: cannot find -lmysqlclient_r
> 
> Why are you trying to build with both mariadbclient_r and
> mysqlclient_r at the same time? Both provide a way to access the same
> back-end. Both bibmysqlclient can also talk to a MariaDB server and
> libmariadbclient can also talk to a MySQL server. They are almost the
> same library, with the MariaDB version having some additions.

I'm not trying, -lmariadbclient_r popped in when mariadb was choosen by the 
buildd.

> What do you mean with "pro file"? I am not familiar with what "pro"
> means in this context.

qmake's project configuration (more or less as a CMake's CMakeLists.txt, for 
example). You can take a look at:

<https://qt.gitorious.org/qt/qt/source/5dc8b2bac4657827293cfc870ba49fa87ec96e13:config.tests/unix/mysql_r/mysql_r.pro>

> The MariaDB control file looks like this because it cannot be
> co-installed with libmysqlclient-dev, but it can be used to the same
> purpose:
> 
> Package: libmariadbclient-dev
> Architecture: any
> Section: libdevel
> Depends: libmariadbclient18 (= ${binary:Version}),
>          zlib1g-dev,
>          ${misc:Depends},
>          ${shlibs:Depends}
> Breaks: libmysqlclient-dev
> Replaces: libmysqlclient-dev
> Provides: libmysqlclient-dev
> Description: MariaDB database development files
> 
> 
> Upstream MariaDB only ships with libmysqlclient.so, while I have
> changed the Debian version to ship the library using the name
> libmariadbclient.so, because I got feedback that it is not good policy
> for the MariaDB package to ship a so name that also exists in another
> package. Maybe this re-name decision should be re-visited, and MariaDB
> should rather ship with a libmysqlclient.so, which would actually also
> solve this issue as MariaDB packages would be a more complete
> drop-in-replacement for MySQL here?

Well, either rename it or do not provide libmysqlclient-dev with it. The fact 
is that as long as the name differs you can't provide libmysqlclient-dev.

On the other hand, if upstream ships it as libmysqlclient.so and only Debian 
ships it with a different name I will surely not convince upstream to somehow 
autodetect it. Would have been otherwise (ie, upstream shipping 
libmariadbclient.so) I would have a chance at least :-/

> There is also a LGPL licensed version of the MariaDB client libs, and
> it has been uploaded to Debian experimental. Maybe I should remove
> libmariadbclient.so completely from the mariadb-5.5 source package and
> recommend that people separately install the new client library
> package and use it to interface MariaDB if they wan MariaDB-specific
> features, like the async API?

Well, that's really up to you the maintainer to decide :)
 
> In the light of this issue you marked severe, what do you suggest
> would be the best solution?
> 
> Thank you for your report and feedback!

Well, I wrote it above :) Thanks to you for your fast reply :)

-- 
Geek Inside!

Lisandro Damián Nicanor Pérez Meyer
http://perezmeyer.com.ar/
http://perezmeyer.blogspot.com/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.alioth.debian.org/pipermail/pkg-mysql-maint/attachments/20140826/6d72fda6/attachment.sig>


More information about the pkg-mysql-maint mailing list