memcachedのモニタリングのためにCloudForecastを導入しようと思って下記のURLの通り進めていったのですが途中でエラーが出てしまい原因が分かりません。
http://gihyo.jp/dev/feature/01/memcached_advanced/0003?page=2
$ git clone git://github.com/kazeburo/cloudforecast.git
$ cd cloudforecast
$ cpanm -l extlib --installdeps .
とすると下記のエラーが出ます。
# cpanm -l extlib --installdeps .
--> Working on .
Configuring /root/cloudforecast ... OK
==> Found dependencies: Plack::Middleware::Access
--> Working on Plack::Middleware::Access
Fetching http://www.cpan.org/authors/id/T/TA/TADAM/Plack-Middleware-Access-0.3.tar.gz ... OK
Configuring Plack-Middleware-Access-0.3 ... N/A
! Configure failed for Plack-Middleware-Access-0.3. See /root/.cpanm/build.log for details.
! Bailing out the installation for CloudForecast-0.01. Retry with --prompt or --force.
# tail -f /root/.cpanm/build.log
Entering Plack-Middleware-Access-0.3
Checking configure dependencies from META.yml
Checking if you have ExtUtils::MakeMaker 6.30 ... Yes (6.64)
Configuring Plack-Middleware-Access-0.3
Running Makefile.PL
Perl v5.10.0 required--this is only v5.8.8, stopped at Makefile.PL line 5.
BEGIN failed--compilation aborted at Makefile.PL line 5.
-> N/A
-> FAIL Configure failed for Plack-Middleware-Access-0.3. See /root/.cpanm/build.log for details.
-> FAIL Bailing out the installation for CloudForecast-0.01. Retry with --prompt or --force.
ログを見るとPerl v5.10.0でないといけないようなので
http://blog.77jp.net/perl-5100-%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB-linux
の通りインストールしました。
再度実行したのですがまた、同じエラーがでてログの内容の一緒でした。
$ cpanm -l extlib --installdeps .
うまくいかないのはどういった原因が考えられますでしょうか?
ご教授ください。
よろしくお願い致します。
お礼
先ほど perlbrewを入れてみました。 5.16.2を入れて cpanm -l extlib --installdeps . としたとろうまくいったのですが ./cloudforecast_web -p 5000 -c cloudforecast.yaml -l server_list.yaml で今度は下記のようになりました。 # ./cloudforecast_web -p 5000 -c cloudforecast.yaml -l server_list.yaml Can't locate Proc/Wait3.pm in @INC (@INC contains: /root/cloudforecast/site-lib /root/cloudforecast/extlib/lib/perl5/x86_64-linux /root/cloudforecast/extlib/lib/perl5 /root/cloudforecast/lib /root/perl5/perlbrew/perls/perl-5.16.2/lib/site_perl/5.16.2/x86_64-linux /root/perl5/perlbrew/perls/perl-5.16.2/lib/site_perl/5.16.2 /root/perl5/perlbrew/perls/perl-5.16.2/lib/5.16.2/x86_64-linux /root/perl5/perlbrew/perls/perl-5.16.2/lib/5.16.2 .) at /root/cloudforecast/extlib/lib/perl5/Parallel/Prefork.pm line 10, <DATA> line 1092. BEGIN failed--compilation aborted at /root/cloudforecast/extlib/lib/perl5/Parallel/Prefork.pm line 10, <DATA> line 1092. Compilation failed in require at /root/cloudforecast/extlib/lib/perl5/Plack/Handler/Starlet.pm line 6, <DATA> line 1092. BEGIN failed--compilation aborted at /root/cloudforecast/extlib/lib/perl5/Plack/Handler/Starlet.pm line 6, <DATA> line 1092. Compilation failed in require at /root/cloudforecast/extlib/lib/perl5/Plack/Util.pm line 23, <DATA> line 1092. 検索してみたのですが似たような現象がなかったので perlのバージョンを10.0.1に変更し同じように実行したところ ./cloudforecast_web -p 5000 -c cloudforecast.yaml -l server_list.yaml perl: symbol lookup error: /root/cloudforecast/extlib/lib/perl5/x86_64-linux/auto/Data/MessagePack/MessagePack.so: undefined symbol: Perl_xs_apiversion_bootcheck と出たました。 http://d.hatena.ne.jp/studio3104/20130116/1358304522 で再インストールすると直るとあったのでやってみたのですが変わりませんでした。 うまくいかない原因にはどういった可能性がありますでしょうか? また、rootでperlbrewを入れてしまったのですが後々、問題が出る可能性はありますでしょうか? その場合perlbrewインストール前の状態に戻すにはどのような手順で行えばよいでしょうか? よろしくお願い致します。
補足
ご教授ありがとうございます。 おっしゃる通りバージョンが5.8.8のままでした。 まだ、実行していないのですが perlbrewを使えば上記の作業をせずともうまくいくだろう という解釈であっていますでしょうか? 色々とインストールしていたら今月のサーバーの転送量が制限を越えそうなので 来月、試してみようと思います。 実行後、再度お礼をしたいと思います。 よろしくお願いします。