Take the 2-minute tour ×
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems.. It's 100% free, no registration required.

When I want to install perl-DBD-MySQL I get this error:

yum install perl-DBD-MySQL.x86_64

Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package perl-DBD-MySQL.x86_64 0:4.013-3.el6 will be installed
--> Processing Dependency: libmysqlclient.so.16(libmysqlclient_16)(64bit) for package: perl-DBD-MySQL-4.013-3.el6.x86_64
--> Processing Dependency: libmysqlclient.so.16()(64bit) for package: perl-DBD-MySQL-4.013-3.el6.x86_64
--> Finished Dependency Resolution
Error: Package: perl-DBD-MySQL-4.013-3.el6.x86_64 (base)
           Requires: libmysqlclient.so.16()(64bit)
Error: Package: perl-DBD-MySQL-4.013-3.el6.x86_64 (base)
           Requires: libmysqlclient.so.16(libmysqlclient_16)(64bit)
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

Using --skip-broken :

Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package perl-DBD-MySQL.x86_64 0:4.013-3.el6 will be installed
--> Processing Dependency: libmysqlclient.so.16(libmysqlclient_16)(64bit) for package: perl-DBD-MySQL-4.013-3.el6.x86_64
--> Processing Dependency: libmysqlclient.so.16()(64bit) for package: perl-DBD-MySQL-4.013-3.el6.x86_64
--> Finished Dependency Resolution

Packages skipped because of dependency problems:
    perl-DBD-MySQL-4.013-3.el6.x86_64 from base

What package should I install?

share|improve this question
add comment

1 Answer 1

up vote 2 down vote accepted

Anytime you encounter the installation of a package that complains it "requires" something you should try and remember to use this command to determine what RPM package provides this file. In your case the message:

      Requires: libmysqlclient.so.16()(64bit)

is suppose to be a hint. Granted it's a little weak, but with this info you can run the following command to determine the package that contains this .so library file:

$ yum provides *libmysqlclient.so.16*

Which will give you the following:

mysql-libs-5.1.69-1.el6_4.x86_64 : The shared libraries required for MySQL clients
Repo        : installed
Matched from:
Other       : libmysqlclient.so.16()(64bit)
Other       : libmysqlclient.so.16(libmysqlclient_16)(64bit)
Filename    : /usr/lib64/mysql/libmysqlclient.so.16.0.0
Filename    : /usr/lib64/mysql/libmysqlclient.so.16

NOTE: You'll likely get multiple hits, one for each version of this package that's in the yum repositories.

From this you now know which package provides the file, mysql-libs. So just do this to install it:

$ sudo yum install mysql-libs

This package looks to be part of the base installation and was available in the updates repo under CentOS 6.4.

$ repoquery --location mysql-libs
http://mirrors.advancedhosters.com/centos/6.4/updates/x86_64/Packages/mysql-libs-5.1.69-1.el6_4.i686.rpm
http://mirrors.advancedhosters.com/centos/6.4/updates/x86_64/Packages/mysql-libs-5.1.69-1.el6_4.x86_64.rpm
share|improve this answer
    
Thanks but I get this message : No package mysql-libs available. for sudo yum install mysql-libs –  hpn Jul 7 '13 at 8:10
    
@hpn - what's your version of CentOS? I'm on CentOS 6.4 and it's in the updates repo which is part of the base installation. –  slm Jul 7 '13 at 8:18
    
It's 6.3 ...... –  hpn Jul 7 '13 at 8:23
    
@hpn - run this command to see what repos you have yum repolist. updates should be in that list. –  slm Jul 7 '13 at 8:29
    
Yes. updates is included, but repoquery --location mysql-libs returns nothing –  hpn Jul 7 '13 at 8:42
show 2 more comments

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.