OSX Mavericks にアップグレードした後、DBI/DBD を実行できません。
Perl と MySQL は正常に動作しています (mysql にログインしてテーブルにアクセスできます) が、アップデーターが以前に動作していた Perl モジュールをすべて削除したため、Perl スクリプトは DBI を使用できなくなりました。
/opt/local/lib/perl5/site_perl/5.12.4/darwin-multi-2level/ にインストールされた CPAN を使用して、DBI と DBD::mysql を再インストールしました。モジュール (DBI、DBD、および「auto」内のすべて) を /Library/Perl/5.16/darwin-multi-2level/ にコピーした後 (cpan で使用されるディレクトリが @INC にないため)、スクリプトは内部サーバー エラー ( FatalsToBrowser でも)。
Apacheエラーログには次のように書かれています:
dyld: lazy symbol binding failed: Symbol not found: _Perl_Istack_sp_ptr
Referenced from: /opt/local/lib/perl5/site_perl/5.12.4/darwin-multi-2level/auto/DBI/DBI.bundle
Expected in: flat namespace
dyld: Symbol not found: _Perl_Istack_sp_ptr
Referenced from: /opt/local/lib/perl5/site_perl/5.12.4/darwin-multi-2level/auto/DBI/DBI.bundle
Expected in: flat namespace
Premature end of script headers: test.pl
ここで何が問題なのですか?ファイルをコピーしたからでしょうか?CPAN を強制的に /Library/Perl/5.16/ に直接インストールするべきでしょうか? どうすればCPANにそうするように伝えることができますか?
何か案は?