Re: Tausend Perl-Versionen

From: Christian Lackas <c.lackas(at)kfa-juelich.de>
Date: Fri, 25 Jun 2004 15:14:40 +0200

* Arvid Warnecke <arvid(at)nostalgix.org> [040624 23:20]:

Hallo Arvid,

> Can't locate URI/Escape.pm in @INC (@INC contains:
> /usr/local/lib/perl5/site_perl/5.005/i386-freebsd
> /usr/local/lib/perl5/site_perl/5.005 . /usr/libdata/perl/5.00503/mach
> /usr/libdata/perl/5.00503) at /usr/local/bin/cthumb line 24.
> BEGIN failed--compilation aborted at /usr/local/bin/cthumb line 24.
> Installiert ist allerdings mittlerweile Perl in der Version 5.8.4,
> welches auch mittels "use.perl port" benutzt werden sollte.

offenbar findet dein Port aber noch irgendwo das alte 5.005 binary (aus
dem Basis-System?). Schau doch einfach mal nach, ob /usr/bin/perl oder
/usr/local/bin/perl (bzw. dem Pfad der in der #!-Zeile des verwendeten
Perl-Skriptes steht) auch all auf Perl 5.8 verweisen.
Vielleicht benutzt cthumb ja auch suid perl oder verlangt auch explizit
nach perl5.005 (ob nun zu Recht oder auch nicht)?

> Nun verstehe ich nur nicht, warum überhaupt noch so viele Altlasten da
> rumvegetieren und @INC angeblich diese auch noch enthält.

Du kannst das alte Perl ja entfernen, wenn du möchtest. Und mit FreeBSD
5 (ich nehme mal an, du verwendest 4) solltest sich das Problem noch
weiter gelöst haben, da Perl hier ja gar nicht mehr im Basis-System
vorhanden ist.

> Ich habe mit Perl nicht allzu viel gemacht, aber auch mittels Google
> habe ich nur den Hinweis gefunden PERLLIBS mit aktuellen
> Verzeichnissen zu erweitern. Das hilft aber auch nur wenig, denn dann
> kommt der nächste Fehler und es wird Entities.pm vermisst, welches
> sich widerum ganz woanders befindet.

Das wird gar nicht nötig sein, da das 5.8 binary die Pfade zu seinen
Modulen ja kennt, nur das 5.005 hat da halt andere Pfade.

> Gibt es einen Weg Perl mal komplett zu entrümpeln, so dass solche
> Probleme vorerst nicht wieder auftreten? Oder irgend einen anderen Weg,
> wie ich die gleiche Perl-Version allen zugänglich machen kann?

Durchsuch mal deine $PATH-Verzeichnisse nach allen perl* Dateien, die
noch zum alten Perl gehören. Ansonsten kannst du die Module der alten
Versionen in /usr/local/lib/perl5/5.00503 und
/usr/local/lib/perl5/site_perl/5.00503 finden.

Gruss
 Christian

-- 
Murphys Law 9:
Jedes Programm, das läuft. ist veraltet.
Jedes fertige Programm kostet mehr und dauert länger.
Jedes nützliche Programm wird geändert.
Jedes nutzlose sofort dokumentiert.
To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Fri 25 Jun 2004 - 15:15:27 CEST

search this site