了解如何在本地安装 Perl,以便在自己的电脑上完成 Exercism 的练习
本 track 面向 Perl 的最新稳定版本。
也可以使用较旧版本的 Perl,但为了保持兼容性,可能需要调整所提供的存根文件。
如果无法使用存根文件中指定的版本,建议把 use v5.XX; 替换为以下代码:
use strict;
use warnings;
use feature qw<signatures>;
如果存根文件中包含 use experimental qw<class>;,而你使用的 Perl 版本不支持它,可以把这行替换为 use Feature::Compat::Class;,也可以改用其他面向对象系统,例如 Moo。
Perl 很可能已经安装好了,但未必是最新版本。
运行 perl -v 可以查看你当前的版本。
如果你想使用更新的版本,请查看“其他选项”一节。
如果你使用的是 Fedora/Red Hat/CentOS,有些核心模块并未随 Perl 一起提供。
可以用 yum install perl-core 命令来安装它们。
Strawberry Perl:一个 100% 开源的 Windows 版 Perl,与其他平台上的 Perl 完全一致; 包括可以直接使用 CPAN 上的模块,无需二进制包。
你可以直接从网站安装,也可以使用 chocolatey 包管理器。
$HOME 目录下多个 Perl 安装的工具。
它们彼此是完全隔离的 Perl 环境。如果你使用的 Perl 版本低于 5.40,就需要安装 Test2::V0 测试套件。
对于面向对象练习,你还需要安装 Feature::Compat::Class,或者其他面向对象系统。
请按以下步骤完成设置(如果你已经熟悉 Perl,也可以随意使用自己惯用的模块安装器):
确保已经安装并配置好 exercism CLI。
运行 exercism workspace 应该会显示相应的路径。
下载 cpm 模块安装器,并用它把自身、local::lib、Test2::V0 和 Feature::Compat::Class 安装到你的 exercism/perl5 目录中:
# *nix
curl -sL --compressed https://git.io/cpm | \
perl - install -L $(exercism workspace)/perl5 App::cpm local::lib Test2::V0 Feature::Compat::Class
# Microsoft PowerShell
(Invoke-WebRequest -UseBasicParsing 'https://git.io/cpm').Content |
perl - install -L "$(exercism workspace)/perl5" App::cpm local::lib Test2::V0 Feature::Compat::Class
local::lib,配置好环境,以便使用你安装到 exercism/perl5 中的模块:# *nix
eval $(perl -I$(exercism workspace)/perl5/lib/perl5 -Mlocal::lib=$(exercism workspace)/perl5)
# Microsoft PowerShell
perl -I"$(exercism workspace)/perl5/lib/perl5"
-M"local::lib=--shelltype=powershell,$(exercism workspace)/perl5" | Invoke-Expression
上面这条命令对环境所做的修改不会一直保留,重启 shell 后需要重新运行。
如果你希望每次都能自动配置好环境,可以在 .bashrc(或 *nix 下的对应文件)或 PowerShell_profile.ps1 中加入上面的命令。
local::lib 的文档可以在这里找到。
另外,你所用操作系统的包管理器可能也提供了可安装的 Test2 Suite 软件包。 可选的有: