ある日突然「weaken is only available with the XS version of Scalar::Util」ってメッセージと共にCatalystが起動しなくなりました

起動しようとするとエラーが・・。

weaken is only available with the XS version of Scalar::Util at /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/Class/MOP.pm line 12
BEGIN failed--compilation aborted at /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/Class/MOP.pm line 12.
Compilation failed in require at /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/Moose/Exporter.pm line 11.
BEGIN failed--compilation aborted at /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/Moose/Exporter.pm line 11.
Compilation failed in require at /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/Moose.pm line 15.
BEGIN failed--compilation aborted at /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/Moose.pm line 15.
Compilation failed in require at /usr/lib/perl5/site_perl/5.8.8/Catalyst/ScriptRunner.pm line 2.
BEGIN failed--compilation aborted at /usr/lib/perl5/site_perl/5.8.8/Catalyst/ScriptRunner.pm line 2.

で、ぐぐって見つけたのは下記のページ

Net::Twitter が突然動かなくなったら (備忘メモ) – シングスブログ
http://blog.thingslabo.com/archives/000052.html

どうやらScalar::Utilは、PP版とXS版があるみたいですね。
何をインストールしたときに、PP版になってしまったのか記憶に無(ry

$ sudo cpan
cpan> look Scalar::Util
$ perl Makefile.PL -XS
$ make
$ make test
$ make install

って感じで、ビルド時に-XS指定して、XS版のScalar::Utilをインストールして、無事に起動できました。

返信を残す

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください