Reputation: 700
I'm trying to install a rpm and get following error:
---> Package geramer-server.x86_64 0:3.6.0.117-1 will be an update
--> Processing Dependency: libcrypto.so.10(libcrypto.so.10)(64bit) for package: geramer-server-3.6.0.117-1.x86_64
---> Package geramer-ui.x86_64 0:3.6.0.98-1 will be updated
---> Package geramer-ui.x86_64 0:3.6.0.117-1 will be an update
--> Finished Dependency Resolution
Error: Package: geramer-server-3.6.0.117-1.x86_64 (/geramer-server-3.6.0.117.x86_64)
Requires: libcrypto.so.10(libcrypto.so.10)(64bit)
My first thought was that libcrypto.so is not installed. But this is not the case, see:
$ ldconfig -p | grep libcrypto.so
libcrypto.so.10 (libc6,x86-64) => /usr/lib64/libcrypto.so.10
It also exists on disk:
$ ls -l /usr/lib64/libcrypto.so.10
lrwxrwxrwx 1 root root 18 Dec 4 13:11 /usr/lib64/libcrypto.so.10 -> libcrypto.so.1.0.0
And also RPM knows about it:
$ yum whatprovides "*/libcrypto.so.10"
Loaded plugins: product-id, rhnplugin, subscription-manager
*Note* Red Hat Network repositories are not listed below. You must run this command as root to access RHN repositories.
openssl-1.0.0-25.el6_3.1.x86_64 : A general purpose cryptography library with TLS implementation
Repo : installed
Matched from:
Filename : /usr/lib64/libcrypto.so.10
So any ideas what I'm missing?
Regards, Andi
Upvotes: 16
Views: 80086
Reputation: 527
Download the proper rpm package from this link.
To be specific,
wget http://mirror.centos.org/centos/7/os/x86_64/Packages/openssl-libs-1.0.2k-16.el7.x86_64.rpm
rpm -ivh openssl-libs-1.0.2k-16.el7.x86_64.rpm --force
And then yum install
your package again.
Upvotes: 2
Reputation: 1
[2018-11-07] my solution..
sudo yum install http://mirror.centos.org/centos/7/os/x86_64/Packages/openssl-1.0.2k-12.el7.x86_64.rpm http://mirror.centos.org/centos/7/os/x86_64/Packages/openssl-libs-1.0.2k-12.el7.x86_64.rpm
this is..
sudo yum install
http://mirror.centos.org/centos/7/os/x86_64/Packages/openssl-1.0.2k-12.el7.x86_64.rpm
http://mirror.centos.org/centos/7/os/x86_64/Packages/openssl-libs-1.0.2k-12.el7.x86_64.rpm
if that file isn't.. you should visit that site and find latest, then edit file's name.
ex)
access ==> http://mirror.centos.org/centos/7/os/x86_64/Packages/
find ==> openssl-1.0.2k-
Upvotes: 0
Reputation: 11
Try installing openssl and openssl-libs simultaneously with the following command for RHEL7 or CentOS 7:
sudo yum install http://mirror.centos.org/centos/7/os/x86_64/Packages/openssl-1.0.2k-8.el7.x86_64.rpm http://mirror.centos.org/centos/7/os/x86_64/Packages/openssl-libs-1.0.2k-8.el7.x86_64.rpm
As both openssl and openssl-libs requires each other as dependecies and running without sudo can arise conflict issues with older version.
Upvotes: 1
Reputation: 624
I used yumdownloader
to create a local copy of the openssl rpm. Then I used rpmrebuild with the -e -p PACKAGE
flags to add the missing Provides
and create a new rpm. Then installed that resultant artifact. Incrementing the Release
also helped.
Upvotes: 0
Reputation: 1751
I know this thread is kinda old, but I ran into this problem recently, and wanted to share what I did to fix it, especially since @divanov's answer helped me debug the issue.
In my case, I was unable to install a particular postgres rpm (postgresql91), and was seeing the same error:
Error: Package: postgresql91-libs-9.1.12-1PGDG.rhel6.x86_64 (/postgresql91-libs-9.1.12-1PGDG.rhel6.x86_64)
Requires: libcrypto.so.10(libcrypto.so.10)(64bit)
Error: Package: postgresql91-libs-9.1.12-1PGDG.rhel6.x86_64 (/postgresql91-libs-9.1.12-1PGDG.rhel6.x86_64)
Requires: libssl.so.10(libssl.so.10)(64bit)
Basically, I was able to fix the problem by upgrading the version of openssl that was installed. At the time of this writing, openssl-1.0.1e-15 is available in the CentOS (6) repository, here: openssl-1.0.1e-15.el6.x86_64.rpm and provides the libssl and libcrypto dependencies that were previously missing.
To install, you can:
sudo yum install http://mirror.centos.org/centos/6/os/x86_64/Packages/openssl-1.0.1e-15.el6.x86_64.rpm
Again, if the version in the CentOS repo changes, that URL may no longer be valid.
Ok, now for the gory details...
Originally, my machine had openssl-1.0.0-27.el6_4.2.x86_64.rpm installed, which didn't provide all of the packages my postgres rpm was requiring:
> rpm -q --provides openssl
config(openssl) = 1.0.0-27.el6_4.2
...
libcrypto.so.10()(64bit)
...
libssl.so.10()(64bit)
...
After installing the newer openssl version:
> rpm -q --provides openssl
config(openssl) = 1.0.1e-16.el6_5.4
...
libcrypto.so.10()(64bit)
libcrypto.so.10(OPENSSL_1.0.1)(64bit)
libcrypto.so.10(OPENSSL_1.0.1_EC)(64bit)
libcrypto.so.10(libcrypto.so.10)(64bit)
...
libssl.so.10()(64bit)
libssl.so.10(OPENSSL_1.0.1)(64bit)
libssl.so.10(OPENSSL_1.0.1_EC)(64bit)
libssl.so.10(libssl.so.10)(64bit)
...
And all are happy now...
Bottom line, install a newer version of openssl and it should provide the dependencies you need. Good Luck!
Upvotes: 10
Reputation: 32552
I was able to fix this by removing openssl from the exclude line in /etc/yum.conf. We have managed servers, so it was placed there by default. I then just ran a normal yum install of what I needed and it worked out fine.
Upvotes: 1
Reputation: 6339
Dependencies have module names, which are listed in parenthesis to prevent collisions between packages. However, openssl in RHEL or openssl-libs on Fedora provide libcrypto.so.10 with four different module names for two architectures:
$ rpm -q --provides openssl-libs | grep libcrypto.so.10
libcrypto.so.10()(64bit)
libcrypto.so.10(OPENSSL_1.0.1)(64bit)
libcrypto.so.10(OPENSSL_1.0.1_EC)(64bit)
libcrypto.so.10(libcrypto.so.10)(64bit)
libcrypto.so.10
libcrypto.so.10(OPENSSL_1.0.1)
libcrypto.so.10(OPENSSL_1.0.1_EC)
libcrypto.so.10(libcrypto.so.10)
It seems to be the case for CentOS too, which is RHEL based.
In your case, openssl seems to provide only libcrypto.so.10 without any module name, making geramer-server believe that dependency is missing as it requires libcrypto.so.10 from module libcrypto.so.10.
Upvotes: 7