如何降级到perl 5.10.1?

如何降级到perl 5.10.1?,perl,downgrade,Perl,Downgrade,我在perl模块方面遇到了很多问题,需要perl(:MODULE\u COMPAT\u 5.10.1): 安装的perl版本是5.16.3,操作系统是Amazon Linux AMI release 2014.03,我非常希望降级到perl 5.10.1,以便解决兼容性问题。我该怎么做 当我尝试安装perl-Net-Amazon-EC2时,尤其会发生这种情况,下面是yum列表显示的内容: perl-Net-Amazon-EC2.noarch 0.14-2.el6 epel 它来自epel,这是回

我在perl模块方面遇到了很多问题,需要
perl(:MODULE\u COMPAT\u 5.10.1)

安装的perl版本是5.16.3,操作系统是Amazon Linux AMI release 2014.03,我非常希望降级到perl 5.10.1,以便解决兼容性问题。我该怎么做

当我尝试安装perl-Net-Amazon-EC2时,尤其会发生这种情况,下面是
yum列表显示的内容

perl-Net-Amazon-EC2.noarch 0.14-2.el6 epel

它来自epel,这是回购文件的相应部分:

[epel]
name=Extra Packages for Enterprise Linux 6 - $basearch
#baseurl=http://download.fedoraproject.org/pub/epel/6/$basearch
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch
failovermethod=priority
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

似乎repo中的版本是0.14,最新版本是0.24(我尝试过手动安装,但它不起作用,我无论如何都不想为所有软件包手动安装)

最简单的方法是安装。它是Linux/Unix特定的,并且使用BASH。如果使用Zsh或Kornshell,则需要稍微咀嚼脚本。如果你在Windows上,那么。。。祝你好运

Perlbrew将允许您在用户安装Perls时安装多个版本的Perl。使用这些不同版本的Perl不需要root权限,也可以通过Perlbrew运行CPAN,在不同版本的Perl中安装模块。这是安装多个Perl版本进行测试的好方法。我的默认Perl是5.16,因此我安装了5.18以获得最新版本,5.10、5.12和5.8.9,以尽可能接近我们在RHEL服务器上运行的Perl版本

要从一个Perl版本切换到另一个版本,请使用以下命令:

$ perlbrew use 5.10   # Use this version in the current shell

要安装特定版本的Perl,请执行以下操作:

$ perlbrew install 5.10  # I'm installing Perl 5.10!
Perlbrew使用
$PATH
设置Perl版本,因此需要小心使用shebang。您不必再在
/usr/bin/Perl
下运行Perl了。在Perl脚本中,您应该:

#! /usr/bin/env perl

比尝试降级默认安装的Perl要容易得多。

这些软件包是从哪里获得的?最好的办法可能是只添加一个新的Perl安装5.10.1,而不是降级(这会很麻烦)。对于管理多个Perl安装有很多帮助。例如,请参阅。@Richard Huxton、
yum安装perl-Moose
yum安装perl-Net-Amazon-EC2
都会因此失败。然后,Amazon Linux的打包已损坏,或者您已损坏打包配置。这些似乎不是Perl错误-我猜是yum抱怨新软件包的版本不对。@Richard Huxton,我没有对AMI进行任何更改-从console.aws.amazon.com开始,ssh'ed到instance,运行yum安装,获取错误。我尝试了此操作,但当我尝试使用perlbrew安装任何版本时,我得到了错误:
未检索页面;HTTP错误代码400或以上。在/usr/share/perl5/vendor_perl/App/perlbrew.pm第228行。
@Fabiotk,%perlbrew可用您需要做两件事,首先创建必要的目录,然后使用次要版本进行安装,如
cd;mkdir perl5/;mkdir perl5/perlbrew/;mkdir perl5/perlbrew/dists
然后
perlbrew安装perl-5.16.0
$ perlbrew install 5.10  # I'm installing Perl 5.10!
#! /usr/bin/env perl