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”的主要内容,如果未能解决你的问题,请参考以下文章
perl/shell 脚本中存在语法错误时的 rpm 构建预防