最近はrbenvのようにplenvというものでバージョンの管理とかやるそうです。
なので、plenvでcpanm使ってモジュールを入れてみました。
まずはchefのレシピを探してみたところ、あっさりと見つかりました。
https://github.com/kentaro/chef-plenv
まずはplenvとcpanmを入れました。
plenv_install "5.16.3" do
user "user"
action :install
end
plenv_global "5.16.3" do
user "user"
action :run
end
%w[
Carton
].each do |mod|
plenv_cpanm mod do
user "user"
version "5.16.3"
options "--force"
action :install
end
end
続いてcpanfileに必要なモジュールを記述して、以下を実行します。
$ plenv exec carton install --deployment
モジュールを入れてみたので早速実行してみます。
$ perl test.pl Can't locate Net/Hadoop/WebHDFS.pm in @INC (@INC contains: /home/user/app/lib/perl/Sample/../../../lib/perl /home/user/app/lib/perl /home/user/.plenv/versions/5.16.3/lib/perl5/site_perl/5.16.3/x86_64-linux /home/user/.plenv/versions/5.16.3/lib/perl5/site_perl/5.16.3 /home/user/.plenv/versions/5.16.3/lib/perl5/5.16.3/x86_64-linux /home/user/.plenv/versions/5.16.3/lib/perl5/5.16.3 .) at /home/user/app/lib/perl/Sample/WebHDFS.pm line 11. BEGIN failed--compilation aborted at /home/user/app/lib/perl/Sample/WebHDFS.pm line 11. Compilation failed in require at test.pl line 2. BEGIN failed--compilation aborted at test.pl line 2.
どうやらcpanmで入れたモジュールが読み込めてないようです。
実行方法を調べてみたところ、以下のように実行すればよいようです。
$ carton exec perl test.pl
参考URL
https://github.com/kentaro/chef-plenv
http://gihyo.jp/dev/serial/01/perl-hackers-hub/002103
http://blog.papix.net/entry/2013/06/04/081554
http://tech-mr-myself.hatenablog.com/entry/2013/05/29/175716
0 件のコメント:
コメントを投稿