0

Solaris10で実行しています。

私はsunfreewareからperlをダウンロードしてインストールしました。

CPANコマンドを実行しようとすると、次のエラーが発生しました。

# perl -MCPAN -e shell
Now you need to choose your CPAN mirror sites.  You can let me
pick mirrors for you, you can select them from a list or you
can enter them by hand.

Would you like me to automatically choose the best CPAN mirror
sites for you? (This means connecting to the Internet and could
take a couple minutes) [yes]

Trying to fetch a mirror list from the Internet
  LWP not available
  LWP not available
Fetching with Net::FTP:
ftp://ftp.perl.org/pub/CPAN/MIRRORED.BY
ld.so.1: perl: fatal: relocation error: file /usr/local/lib/perl5/5.12.3/i86pc-solaris/auto/Socket/Socket.so: symbol inet_aton: referenced symbol not found
Killed
#

lddには問題がないようです

# ldd /usr/local/lib/perl5/5.12.3/i86pc-solaris/auto/Socket/Socket.so
        libc.so.1 =>     /lib/libc.so.1
        libm.so.2 =>     /lib/libm.so.2

私が何を見逃しているのか分かりますか?

4

1 に答える 1

1

すべてを手動で再コンパイルしないようにするには、CPAN make_argLIBS=-lresolvmbuild_argで構成します--config libs=-lresolv。(これにより、すべてのPerl distroコンパイル実行に対してライブラリがグローバルに追加されます。)次に、CPANrecompileコマンドを発行します。私はこれをテストしていません。最初に予備のシステムで実験し、問題が発生した場合にPerlツリーを復元できるようにします。

Socket distroのみが追加のlibsパラメーターを必要とする場合は、これを手動で再コンパイルするのが最善です。

$ cpan
cpan> look Socket
Socket$ perl Makefile.PL LIBS=-lresolv ; make ; make test
Socket$ sudo make install
于 2012-02-22T10:14:08.593 に答える