Net::Twitter が突然動かなくなった。なかなか気づかないエラーなので備忘メモ。
weaken is only available with the XS version of Scalar::Util at /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Class/MOP.pm line 12
BEGIN failed--compilation aborted at /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Class/MOP.pm line 12.
Compilation failed in require at /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Moose/Exporter.pm line 11.
BEGIN failed--compilation aborted at /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Moose/Exporter.pm line 11.
Compilation failed in require at /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Moose.pm line 14.
BEGIN failed--compilation aborted at /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/Moose.pm line 14.
Compilation failed in require at /usr/lib/perl5/site_perl/5.8.8/Net/Twitter.pm line 2.
先頭に
weaken is only available with the XS version of Scalar::Util
とある。どうやら yum update で XS 版から Pure Perl 版の Scalar::Util に入れ替わったようだ。
weaken で Cコンパイラが使えないとエラーになって、Net::Twitter が玉突きのようなエラーに。
ということで、XS 版 Scalar::Util を再インストール。
$ sudo cpan
cpan> look Scalar::Util
でビルドディレクトリを作成して移動。オプション (-XS) を指定して Makefile を作成後、Scalar::Util をインストール。
$ perl Makefile.PL -XS
$ make
$ make test
$ make install
Complete!!