Perl 的 rpm 版本不同于“perl -v”

Posted

技术标签:

【中文标题】Perl 的 rpm 版本不同于“perl -v”【英文标题】:Perl's rpm version differs from "perl -v" 【发布时间】:2022-01-12 09:20:34 【问题描述】:

我在 CentOS 7 上工作,似乎我在使用 perl 时遇到了问题。 我的项目至少需要 5.10 的 perl。

当我:

perl -v

我收到一条描述 perl v5.8.9 的消息,但是当我

rpm -qa | grep perl 5-

我得到一个:

perl-5.16.3-292.el7.x86_64

返回。

我以为 rpm 会安装这个 5.16.3 版本,但事实并非如此。我该怎么做?

【问题讨论】:

您可能安装了多个 perls,并且 $PATH 上的 5.8 更高 Perl 5 现在是第 34 版。您可能需要比已有近十年历史的版本 16 更新的东西。 【参考方案1】:

尝试运行which perl

您可能安装了多个,而您的路径决定了您将获得哪一个。

一个相当常见的拆分是拥有一个/usr/bin/perl,它是您的“系统”perl,并通过您的包管理器安装,并通过下载并构建到/usr/local/bin 来安装另一个更新的perl。

【讨论】:

【参考方案2】:

考虑使用perlbrew。您可以通过以下命令安装它:

curl -L https://install.perlbrew.pl | bash 初始化: perlbrew init 查看可用内容:perlbrew available

然后通过执行以下命令切换到不同的 perl 版本:

perlbrew swith perl-5.16.3 perl -v

【讨论】:

我真的认为您的解决方案可行,但遗憾的是我的公司政策不允许访问该网站

以上是关于Perl 的 rpm 版本不同于“perl -v”的主要内容,如果未能解决你的问题,请参考以下文章

Linux中perl-DBI和DBI有啥区别?

完全删除 perl 包

rpm 软件包离线安装

perl/shell 脚本中存在语法错误时的 rpm 构建预防

linux 下安装rpm文件包时,提示perl(***::****::***) is needed by *****

Perl 未知解压模板