如何解决 rpm 依赖关系

如何解决 rpm 依赖关系

我尝试在 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

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

答案1

您安装的 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 的版本也可以运行)。

因此,您需要找到适用于 RHEL 6.x 的 libtirpc 版本(适用于“el6”)。我不确定您在哪里找到 RPM,但请检查 libtirpc 提供商是否有 el6 版本。

如果找不到,您可以找到您拥有的 RPM 的源 rpm,然后按照以下步骤尝试在 RHEL 6.5 机器上自行重建它指导。这将生成一个可与您已安装的 GLIBC 配合使用的 RPM。

相关内容