yum 安装 perl 失败的依赖项

yum install perl failed dependencies

我收到此错误,在网上搜索但找不到任何内容。

请帮助,新手

错误:依赖项失败:rpm -ivh perl-5.8.8-43.el5_11.i386.rpm

[root@workstation ~]# rpm -ivh perl-5.8.8-43.el5_11.i386.rpm
error: Failed dependencies:

libc.so.6 is needed by perl-5.8.8-43.el5_11.i386
libc.so.6(GLIBC_2.0) is needed by perl-5.8.8-43.el5_11.i386
libc.so.6(GLIBC_2.1) is needed by perl-5.8.8-43.el5_11.i386
libc.so.6(GLIBC_2.1.2) is needed by perl-5.8.8-43.el5_11.i386
libc.so.6(GLIBC_2.1.3) is needed by perl-5.8.8-43.el5_11.i386
libc.so.6(GLIBC_2.2) is needed by perl-5.8.8-43.el5_11.i386
libc.so.6(GLIBC_2.2.4) is needed by perl-5.8.8-43.el5_11.i386
libc.so.6(GLIBC_2.3) is needed by perl-5.8.8-43.el5_11.i386
libc.so.6(GLIBC_2.3.2) is needed by perl-5.8.8-43.el5_11.i386
libc.so.6(GLIBC_2.3.4) is needed by perl-5.8.8-43.el5_11.i386
libc.so.6(GLIBC_2.4) is needed by perl-5.8.8-43.el5_11.i386
libcrypt.so.1 is needed by perl-5.8.8-43.el5_11.i386
libcrypt.so.1(GLIBC_2.0) is needed by perl-5.8.8-43.el5_11.i386
libdb-4.3.so is needed by perl-5.8.8-43.el5_11.i386
libdl.so.2 is needed by perl-5.8.8-43.el5_11.i386
libdl.so.2(GLIBC_2.0) is needed by perl-5.8.8-43.el5_11.i386
libdl.so.2(GLIBC_2.1) is needed by perl-5.8.8-43.el5_11.i386
libgdbm.so.2 is needed by perl-5.8.8-43.el5_11.i386
libm.so.6 is needed by perl-5.8.8-43.el5_11.i386
libm.so.6(GLIBC_2.0) is needed by perl-5.8.8-43.el5_11.i386
libnsl.so.1 is needed by perl-5.8.8-43.el5_11.i386
libpthread.so.0 is needed by perl-5.8.8-43.el5_11.i386
libpthread.so.0(GLIBC_2.0) is needed by perl-5.8.8-43.el5_11.i386
libpthread.so.0(GLIBC_2.1) is needed by perl-5.8.8-43.el5_11.i386
libpthread.so.0(GLIBC_2.2) is needed by perl-5.8.8-43.el5_11.i386
libpthread.so.0(GLIBC_2.3.2) is needed by perl-5.8.8-43.el5_11.i386
libresolv.so.2 is needed by perl-5.8.8-43.el5_11.i386
librt.so.1 is needed by perl-5.8.8-43.el5_11.i386
librt.so.1(GLIBC_2.2) is needed by perl-5.8.8-43.el5_11.i386
libutil.so.1 is needed by perl-5.8.8-43.el5_11.i386

您没有使用 yum,您使用的是 rpm

运行 rpm 只会安装命令行中列出的软件包(对于 Debian 用户,就像 dpkg -i)。如果你 运行 yum,那么它也会安装任何需要的包(比如 apt-get install)。所以你可能想要:

yum localinstall perl-5.8.8-43.el5_11.i386.rpm

但是,这里有一个很大的警告。您使用的是哪个 Linux 发行版和哪个版本?您正在尝试安装为 Red Hat Enterprise Linux 构建的 RPM 5。这里有两个选项:

  1. 您正在 RHEL5 上安装它。这似乎不太可能,因为它已经安装在那些系统上 - 如果由于某种原因没有安装,您可以使用 yum install perl 安装它,而不是下载和安装特定的 RPM。
  2. 您正在将它安装在基于 Red Hat 的其他版本 Linux 上。这对我来说似乎是一个非常糟糕的主意。 Perl RPM 是 Linux 发行版的一个非常基本的部分,用不同版本的版本构建替换它可能是灾难性的。如果幸运的话,它不会工作,因为各种底层库的正确版本将不可用。如果你不走运,它会安装,你将完全破坏你安装的大部分内容。

您说您需要此版本的 Perl 以便 运行 您想要使用的某些软件。但是你确定它需要特别是这个版本的 Perl 吗?那将是不寻常的。通常,要求是 最低 版本的 Perl。如果您真的需要 Perl 5.8.8,那么我会质疑使用依赖如此旧版本 Perl 的软件是否明智。

如果在这之后您仍然想继续进行此操作,那么请不要使用 RPM 来覆盖您的系统 Perl。唯一明智的方法是构建一个单独的 Perl 安装(可能在 /opt 中)并使用该版本。另一种选择是使用类似 perlbrew 的东西,这使得在同一系统上安装多个版本的 Perl 变得容易。