如何解决rpm依赖

Vik*_*ngh 5 linux centos yum rpm redhat-enterprise-linux

我正在尝试在 RHEL 6.5 上安装 libtirpc,但它失败并要求提供依赖项。

为什么这里显示三个 GLIBC 版本 2.14、2.15 和 2.16。?? 是不是意味着这三个版本中的任何一个都可以安装?

我已经安装了 libc.so.6

bash-4.1# rpm -qf /lib64/libc.so.6
glibc-2.12-1.132.el6.x86_64.


bash-4.1# rpm -ivh libtirpc-0.2.4-0.3.el7.x86_64.rpm
warning: libtirpc-0.2.4-0.3.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID    f4a80eb5: NOKEY
error: Failed dependencies:
    libc.so.6(GLIBC_2.14)(64bit) is needed by libtirpc-0.2.4-0.3.el7.x86_64
    libc.so.6(GLIBC_2.15)(64bit) is needed by libtirpc-0.2.4-0.3.el7.x86_64
    libc.so.6(GLIBC_2.16)(64bit) is needed by libtirpc-0.2.4-0.3.el7.x86_64
Run Code Online (Sandbox Code Playgroud)

还有许多其他私有 RPM 依赖于 glibc-2.12-1.132.el6.x86_64,所以我不想接触 glibc-2.12,是否可以安装不同版本的相同 RPM。??

小智 5

您安装的 glibc 版本不满足您尝试安装的 RPM 的依赖项。

您提到您使用的是 RHEL 6.5——您尝试安装的 RPM 在文件名中包含“el7”(libtirpc-0.2.4-0.3.el7.x86_64.rpm),这意味着它是针对 RHEL 7 编译和构建的.

您可以看到您的系统具有 GLIBC 2.12,但您的 RPM 至少需要 GLIBC 2.14(但任何高达 GLIBC 2.16 的都可以使用)。

因此,您需要为“el6”找到一个适用于 RHEL 6.x 的 libtirpc 版本。我不确定你在哪里找到你的 RPM,但请检查 libtirpc 的提供者以获取 el6 版本。

如果找不到,您可以找到您拥有的 RPM 的源 rpm,然后按照本指南尝试在您的 RHEL 6.5 机器上自行重建它这将产生一个与您安装的 GLIBC 一起使用的 RPM。