はじめに
Mac OS Xでのperl開発において、
catalystやらmojoliciousを入れるようとすると
macに入っているデフォルトのperlのバージョンでは要件が合わないことがあります。
もとのをバージョンアップするなりダウンするなりしても良いのですが、
面倒なので別途perlを入れて切り替えて使えるようにするってものです。
何度目かわかりませんがメモってないことはとりあえず全部メモってやれという心境です。
ながれ
1. perlbrewの説明
perlbrewとは
はじめにでも若干書いてしまいましたが、
ちゃんとした文章で説明したほうが良い気がして参考記事をそのまま引用。
【perlbrewとは】
ホームディレクトリに複数のperlをインストールして切り替えをしてくれるツールです
参考:perlbrewで構築するモダンなPerl環境
perlbrewいれるメリット
こちらも参考サイトまんまですがせっかく入れるならメリットも知っておきたいだろうということで載せます。
2. perlbrewインストール
ではさっそく。
といってもインストールそのものは下記のcurl ...
の一行だけです。
※ 念のため入ってないことを確認 # perlbrew --version zsh: command not found: perlbrew ※ インストール # curl -kL http://install.perlbrew.pl | bash ※ 一応入ったか確認 # ~/perl5/perlbrew/bin/perlbrew --version perl5/perlbrew/bin/perlbrew - App::perlbrew/0.71 ※ パスを通す(bashの人は〜/.bashrc、zshの人は/.zshrcなど適宜変えて) # vi ~/.bashrc ---- vi追記 ---- source ~/perl5/perlbrew/etc/bashrc --------------- ※ 上記の設定を反映 # source ~/.bashrc
補足
パスを通す設定では.bashrc
に設定しましたが、
自分のmacではログインシェルで.bashrcは読まれてませんでした。
(設定が効いてない)
毎回ログインしてからsource ~/.bashrc
とやれば大丈夫ですが
それは面倒なのでログイン時に読み込まれるようにちゃんと設定します
※ .profileに.bashrcを読むように追記(これでログイン時に読まれる) # vi ~/.profile ---- vi追記 ---- source ~/.bashrc ---------------
bashrc系の読み込まれる順序についはこちらが参考になります
→bashrcの設定の読み込まれる順番
補足の補足
設定は.bash_profile
でも.profile
でも大丈夫ですが
自分は後でzshや他のシェルに変えてもperlbrewはパスが通っていて欲しかったので
.profile
にしました。お好みに合わせてどうぞ。
また、設定ファイル的には.bash_profile
を先に読もうとします。
.bash_profile
が無い場合にだけ.profile
を読むので.bash_profile
がある場合はそちらに書きましょう!
3. 好きなバージョンのperlインストール
こちらもやってみるだけですね。
※ インストールできるperlのバージョンを確認(※下に補足) # perlbrew available perl-5.20.1 perl-5.18.2 perl-5.16.3 perl-5.14.4 perl-5.12.5 perl-5.10.1 perl-5.8.9 perl-5.6.2 perl5.005_04 perl5.004_05 perl5.003_07 ※ 適当なところで5.18をインストールしてみる # perlbrew install perl-5.18.2
perl-5.18.2 is successfully installed.
と表示されれば終わりです。
自分は今回4,50分かかりました。
補足1
perlbrew available
で表示されるバージョンについて
(参考サイトの受け売りです)
- 5.xxのxx部分が奇数のバージョンは開発版
- 5.xx.0はバグがある可能性が高い
わかっていて入れる意外はこれらのバージョンは避けたほうが良い
補足2
perlのインストールにはしばらく時間がかかります。
perlbrew install
コマンドを打つと
tail -f ~/perl5/perlbrew/build.perl-5.18.2.log
みたいな感じで表示されるかと思います。
別のターミナルを開いて上記をそのまま打ってみるとインストールの途中経過がログとして見れます
補足3
以前にgrowthforecasの記事でもperlbrew入れて失敗したりしたんですが、
失敗した場合は下記のコマンドでうまくいったりします。
notest
がいいですかね。
# perlbrew --notest install perl-5.18.2 または # perlbrew --force install perl-5.18.2
4. perlの切り替え
こちらも論よりコマンドということでいきなりコマンドから
※ perlbrewによって入れたperlを確認 # perlbrew list perl-5.18.2 ※ perlを切り替える # perlbrew switch 5.18.2 ※ 再度確認(*がついてるのがいま選択してるやつ) # perlbrew list * perl-5.18.2 ※ whichコマンドでperlのパスを確認 # which perl /Users/hoge/perl5/perlbrew/perls/perl-5.18.2/bin/perl ※ perlのバージョンも見てみる # perl -version This is perl 5, version 18, subversion 2 (v5.18.2) built for darwin-2level Copyright 1987-2013, Larry Wall ・・・省略・・・
5. cpanmインストール
perlbrewを使ってCPANもインストールしてしまいます。
なにかと使いますしね。これはすぐ終わります。
# perlbrew install-cpanm cpanm is installed to /Users/hoge/perl5/perlbrew/bin/cpanm
補足
cpanmのログを見たいときはこんな感じ
# tail -f .cpanm/build.log
その他補足
cronでperlbrewで入れたperlを使用する場合は注意が必要らしいです。
細かくは参考サイトを。(手抜き)
→perlbrewで構築するモダンなPerl環境
まとめ
ってことで入れたのは何度目かですが改めてちゃんとメモってみました!
とはいうもののやっていて初めてな気分だったので数回やったくらいじゃほんと覚えてませんねー。。。