これまでのところ、システム perl (Ubuntu 10.10 上) を使用しており、local::lib を使用して CPAN モジュールをプライベート ディレクトリ ~/perl5 にインストールしていました。
私は perlbrew を使おうとしているので、彼らはお互いを知らないようです。perlbrew を使用して perl-5.12.3 をインストールしましたが、perlbrew use perl-5.12.3 を使用して切り替えると、local::lib によって設定された PERL5LIB と PERL_MM_OPT が表示されます。
それは良いことではありません:
$ cpan XML::Simple
/home/gabor/perl5/perlbrew/perls/perl-5.12.3/bin/perl: symbol lookup error: /home/gabor/perl5/lib/perl5/x86_64-linux-gnu-thread-multi/auto/Cwd/Cwd.so: undefined symbol: Perl_Gthr_key_ptr
その間
$ which cpan
/home/gabor/perl5/perlbrew/perls/perl-5.12.3/bin/cpan
したがって、正しいバージョンの cpan クライアントを使用していますが、PERL5LIB 環境変数が原因で、間違った場所からモジュールを取得します。
perlbrew にはいくつかの互換モードがありますか、それとも PERL5LIB と PERL_MM_OPT を手動でオフにする必要がありますか?