已安装库的依赖解析失败 [英] Dependency Resolution Fails on Installed Library
问题描述
我正在尝试安装 rpm 并收到以下错误:
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)
我的第一个想法是没有安装 libcrypto.so.但事实并非如此,请参阅:
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
它也存在于磁盘上:
$ 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
而且 RPM 也知道这一点:
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?
问候,安迪
推荐答案
依赖项具有模块名称,它们列在括号中以防止包之间发生冲突.但是,RHEL 中的 openssl 或 Fedora 中的 openssl-libs 为 libcrypto.so.10 提供了两种架构的四种不同模块名称:
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)
CentOS 好像是这样 也是,它是基于 RHEL 的.
It seems to be the case for CentOS too, which is RHEL based.
在您的情况下,openssl 似乎只提供 libcrypto.so.10 而没有任何模块名称,这让 geramer-server 认为缺少依赖项,因为它需要来自模块 libcrypto.so.10 的 libcrypto.so.10.
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.
这篇关于已安装库的依赖解析失败的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!