Problems with libmysqlclient.so.18

Adam Williamson awilliam at redhat.com
Thu Jul 11 21:51:56 UTC 2013


On Thu, 2013-07-11 at 15:43 -0600, Orion Poplawski wrote:
> On 07/11/2013 03:11 PM, Adam Williamson wrote:
> > On Thu, 2013-07-11 at 16:19 -0400, Eric H. Christensen wrote:
> >> I manage the cqrlog package in Fedora.  One of the 'Requires' is libmysqlclient.so.18.  Up until F19 it hasn't been a problem.  Now users are seeing a dependency error that appears to be fulfilled by mariadb-libs.
> >>
> >> # rpm -Uvh cqrlog-1.5.8-2.fc19.x86_64.rpm
> >> error: Failed dependencies:
> >>          libmysqlclient.so.18 is needed by cqrlog-1.5.8-2.fc19.x86_64
> >> # rpm -ql mariadb-libs |grep libmysqlclient
> >> /usr/lib64/mysql/libmysqlclient.so.18
> >> /usr/lib64/mysql/libmysqlclient.so.18.0.0
> >>
> >>
> >> What am I doing incorrectly?
> >
> > mariadb-libs provides the library with a path. Your package requires it
> > without a path.
> >
> 
> Well, there are arch specific soname provides.  On x86_64, it is:
> 
> libmysqlclient.so.18()(64bit)
> 
> On i386 it is libmysqlclient.so.18 which is why it works there.
> 
> But it seems like you probably just want to require mariadb-libs.

Oh, right, I just noticed the 'rpm -ql' command in the OP. That's not
what you want to do. You want to do 'rpm -q --provides mariadb-libs',
which will get you:

[adamw at adam ~]$ rpm -q --provides mariadb-libs
config(mariadb-libs) = 1:5.5.31-6.fc20
libmysqlclient.so.18()(64bit)
libmysqlclient.so.18(libmysqlclient_16)(64bit)
libmysqlclient.so.18(libmysqlclient_18)(64bit)
libmysqlclient.so.18(libmysqlclient_18_mariadb)(64bit)
mariadb-libs = 1:5.5.31-6.fc20
mariadb-libs(x86-64) = 1:5.5.31-6.fc20
mysql-libs = 1:5.5.31-6.fc20
mysql-libs(x86-64) = 1:5.5.31-6.fc20

As Orion points out, it provides "libmysqlclient.so.18()(64bit)", not
"libmysqlclient.so.18" .
-- 
Adam Williamson
Fedora QA Community Monkey
IRC: adamw | Twitter: AdamW_Fedora | identi.ca: adamwfedora
http://www.happyassassin.net



More information about the devel mailing list