2007年8月28日

perl + ithreads

mod_perl, libapreq2を入れようとした Apacheがthreads付きになっているので, perlをithreads付きでemergeしろと言われた. 言われたとおりにやったが, なんかおかしい.

mod_perlを動かさなくても, movable type 4が

Can’t locate object method “configure” via package “MT::ObjectDriverFactory” at lib/MT.pm line 852.

と言って, 動かない.

そういえば, mod_perlのemerge時に既に入っているはずのversion.pmがないと言われたな. perl-cleanerか.

どうもそのようです. perl-cleanerも依存関係をちゃんと見てやってくれればいいのに, 文字列順にやるから DBD-pgとDBD-mysqlがこけても知らんぷり.

DBIが入ったところでMT-4が言う文句は….

installdriver(Pg) failed: Can’t locate DBD/Pg.pm in @INC (@INC contains: /data/www/localhost/cgi-bin/blog/extlib /data/www/localhost/cgi-bin/blog/extlib lib /etc/perl /usr/lib/perl5/vendorperl/5.8.8/i686-linux-thread-multi /usr/lib/perl5/vendorperl/5.8.8 /usr/lib/perl5/vendorperl /usr/lib/perl5/siteperl/5.8.8/i686-linux-thread-multi /usr/lib/perl5/siteperl/5.8.8 /usr/lib/perl5/siteperl /usr/lib/perl5/5.8.8/i686-linux-thread-multi /usr/lib/perl5/5.8.8 /usr/local/lib/siteperl .) at (eval 29) line 3. Perhaps the DBD::Pg perl module hasn’t been fully installed, or perhaps the capitalisation of ‘Pg’ isn’t right. Available drivers: DBM, ExampleP, File, Gofer, Proxy, Sponge. at /data/www/localhost/cgi-bin/blog/extlib/Data/ObjectDriver/Driver/DBI.pm line 54 at lib/MT/ObjectDriver/Driver/DBD/Pg.pm line 91

そりゃそうだ. こけてるもん. DBD-pgとDBD-mysqlを入れるとMT-4もちゃんと動くようになりました.

追記 ところどころのコマンドで, undefined symbol: PLmarkstackptr がでて, 動かないコマンドが散見される. 少なくともvimとnagiosはそうだった. emerge -e worldしたほうがいいかも.

コメントする