perl - メインの Perl 実行コマンド。 -d からデバッグ出来たり色々詰まってる。plenv - pyenv みたいに環境毎の perl バージョンを切り替えて, バージョン毎のモジュールを管理したり出来る。cpanm - perl におけるモジュールアーカイブが CPAN と呼ばれてて, そこからモジュールを取ってきたりする時に使えるツール。 cpanm だとグローバル単位でのインストールになる。プロジェクト単位だと carton などが必要とのこと。plenv をインストールすればその他もついてくる手元では cpanm が過去バージョンのままという謎現象に悩まされた。
~/work
❯ plenv rehash
~/work
❯ plenv install-cpanm
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  295k  100  295k    0     0   557k      0 --:--:-- --:--:-- --:--:--  556k
App::cpanminus is up to date. (1.7044)
~/work
❯ cpanm --version
cpanm (App::cpanminus) version 1.7044 (/Users/yasuhito.sato/perl5/bin/cpanm)
perl version 5.018004 (/usr/bin/perl)
  %Config:
    archname=darwin-thread-multi-2level
    installsitelib=/Library/Perl/5.18 <--------- ???
おそらく, 色々とインストールを試している際に別経路で入った perl を参照しているもの。その辺り全く考慮しなくて済むので今回は vagrant で linux VM を立てて運用。
正しく動くと以下のようになる。
$ cpanm --version
cpanm (App::cpanminus) version 1.7044 (/home/vagrant/.plenv/versions/5.24.1/bin/cpanm)
perl version 5.024001 (/home/vagrant/.plenv/versions/5.24.1/bin/perl5.24.1)
  %Config:
    archname=x86_64-linux
    installsitelib=/home/vagrant/.plenv/versions/5.24.1/lib/perl5/site_perl/5.24.1