Frage

Ich laufe unter Solaris 10 .

Ich habe Perl von Sunfreeware heruntergeladen und installiert.

Beim Versuch, den CPAN-Befehl auszuführen, wurde der folgende Fehler angezeigt:

# 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 scheint kein Problem zu haben

# 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

Irgendeine Idee, was mir fehlt?

War es hilfreich?

Lösung

Um eine manuelle Neukompilierung von allem zu vermeiden, konfigurieren Sie CPAN make_arg mit LIBS=-lresolv und mbuild_arg mit --config libs=-lresolv .(Dadurch wird die Bibliothek global für alle Perl-Distribution-Kompilierungsläufe hinzugefügt.) Geben Sie dann den Befehl CPAN recompile aus.Ich habe das nicht getestet.Experimentieren Sie zuerst mit einem Ersatzsystem und stellen Sie den Perl-Baum wieder her, wenn etwas schief geht.

Wenn Sie annehmen, dass nur die Socket-Distribution den zusätzlichen libs-Parameter benötigt, kompilieren Sie diesen am besten manuell neu:

$ cpan
cpan> look Socket
Socket$ perl Makefile.PL LIBS=-lresolv ; make ; make test
Socket$ sudo make install

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top