Dependency Resolution Fails on Installed Library

后端 未结 7 2122
无人共我
无人共我 2021-02-19 21:30

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: libcryp         


        
相关标签:
7条回答
  • 2021-02-19 22:11

    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.

    0 讨论(0)
  • 2021-02-19 22:18

    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!

    0 讨论(0)
  • 2021-02-19 22:22

    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.

    0 讨论(0)
  • 2021-02-19 22:22

    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.

    0 讨论(0)
  • 2021-02-19 22:22

    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.

    0 讨论(0)
  • 2021-02-19 22:28

    [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-

    enter image description here

    0 讨论(0)
提交回复
热议问题