Perl Modul uninstall: Perl Modul deinstallieren, wie?
Ein Perl-Modul habe ich mit `perl -MCPAN -e shell&´, und dann unter cpan-Prompt: "install Mo::dul" erfolgreich mit user-Recht installiert.
Da das nicht bequem funktioniert, möchte ich das Modul aber wieder loswerden und dann vielleicht mit einem rpm-packet versuchen, mit root-recht und im Standard-Verzeichnis.
Bei cpan-shell gibt es aber kein Kommando uninstall oder ähnliches.
Wie kann ich das Modul richtig deinstallieren?
Dank im voraus.
User since
2003-11-28
3645
Artikel
ModeratorIn
Uninstall gibt es nicht.
Wenn du das Modul wirklich loswerden willst, dann könntest du alle Dateien, die in der zugehörigen .packlist aufgelistet sind, löschen. Oder vielleicht besser, umbenennen, damit du im Katastrophenfall den alten Zustand wieder herstellen kannst.
User since
2006-03-02
9
Artikel
BenutzerIn
Dank für Deine Antwort.
Schad, dass kein Gegenstück für install existiert.
Hier gleich eine andere damit verbundene Frage. Ich habe mit cpan-shell das Modul Net::IP erfolgreich installiert, zu erst als nomal user. Da es bei Aufruf mit "perl -e 'use Net::iP;'" nicht funktioniert hat, dann es nochmals als root installiert und es funktioniert immer noch nicht.
Gruss,
rongyi
User since
2005-08-17
1420
Artikel
BenutzerIn
Naja, was heisst funktioniert nicht?
Ne Fehlermeldung oder dergleichen waere gut, um dir helfen zu koennen ;)
User since
2006-03-02
9
Artikel
BenutzerIn
Ja, die Meldungen sind wie folgt:
linux:~ # ls -l ./.cpan/build/NetAddr-IP-3.028/blib/man3/NetAddr::IP.3pm
-rw-r--r-- 1 root root 32051 Mar 2 21:26 ./.cpan/build/NetAddr-IP-3.028/blib/man3/NetAddr::IP.3pm
linux:~ # perl -I ./.cpan/build/NetAddr-IP-3.028/blib/man3/NetAddr::IP.3pm -e 'use NetAddr::IP;'
Can't locate NetAddr/IP.pm in @INC (@INC contains: ./.cpan/build/NetAddr-IP-3.028/blib/man3/NetAddr::IP.3pm /usr/lib/perl5/5.8.7/i586-linux-thread-multi /usr/lib/perl5/5.8.7 /usr/lib/perl5/site_perl/5.8.7/i586-linux-thread-multi /usr/lib/perl5/site_perl/5.8.7/usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.7/i586-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.7 /usr/lib/perl5/vendor_perl .) at -e line 1.
BEGIN failed--compilation aborted at -e line 1.
User since
2005-08-17
1420
Artikel
BenutzerIn
Uhm, du sagst Perl, dass er nach nem Modul im Verzeichnis fuer Man-Pages suchen soll? ;)
Ausserdem ist das nur der Part, den CPAN beim Installieren anlegt, das installierte Modul landet wo ganz wo anders.
Mach doch mal nen
User since
2003-08-04
2145
Artikel
ModeratorIn + EditorIn
Der Name des Moduls lautet zwar NetAddr::IP, das ist aber nicht der Dateiname. Im Dateibaum liegt das Modul irgendwo als NetAddr/IP.pm. Der doppelte Doppelpunkt in Modulnamen entspricht einem Pfadtrenner im Dateinamen.
Übrigens hast du oben davon gesprochen, dass du Net::IP installieren wolltest, das build-Verzeichnis, das du uns gezeigt hast, gehört aber zu NetAddr::IP.
User since
2006-03-02
9
Artikel
BenutzerIn
Hi nepos und Dubu,
Net::IP wurde in Form einer rpm-Datei mit YAST (unter SuSE10) installiert und funktioniert gut. Bei diesem Modul fehlt aber das, was mir wichtig ist. Ich möchte nämlich gern aus der Eingabe von IP-Adresse mit der Mask eine CIDR-Zahl (oder Prefix) als Ausgabe haben.
NetAddr::IP ist eins von vielen richtigen. Es ist aber leider nicht als eine RPM-Datei erhältlich, sondern nur als gz-Datei.
Zuerst habe ich mit ` tar xzvf <datei>.tar.gz`; cd <dir>; perl Makefile.PL; make; make test; make install
versucht, gab es Fehlermeldung wie z.B. Test::Pod nicht vorhanden usw.
Anschließend noch mit `perl -MCPAN -e shell` und "cpan>install NetAddr::IP`
Diesmal war die Install ohne Problem durchgelaufen. Allerdings funktioniert `perl -e 'use NetAddr::IP'` eben nicht!
Mit `find /usr -name IP.pm` wird nur Net/IP gefunden, das mit rpm installiert wurde.
Mit `find /usr -name NetAddr -type d` fand ich leider gar nichts.
Gruss,
rongyi
User since
2006-03-02
9
Artikel
BenutzerIn
[quote=Dubu,03.03.2006, 16:22]Der Name des Moduls lautet zwar NetAddr::IP, das ist aber nicht der Dateiname. Im Dateibaum liegt das Modul irgendwo als NetAddr/IP.pm. Der doppelte Doppelpunkt in Modulnamen entspricht einem Pfadtrenner im Dateinamen.
Übrigens hast du oben davon gesprochen, dass du Net::IP installieren wolltest, das build-Verzeichnis, das du uns gezeigt hast, gehört aber zu NetAddr::IP.[/quote]
Sorry! Was nicht funktioniert, ist eben
NetAddr::IP statt Net::IP. Das habe ich falsch geschrieben.
linux:~ # perl -e 'use Net::IP'
linux:~ # perl -e 'use NetAddr::IP'
Can't locate NetAddr/IP.pm in @INC (@INC contains: /usr/lib/perl5/5.8.7/i586-linux-thread-multi /usr/lib/perl5/5.8.7 /usr/lib/perl5/site_perl/5.8.7/i586-linux-thread-multi /usr/lib/perl5/site_perl/5.8.7 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.7/i586-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.7 /usr/lib/perl5/vendor_perl .) at -e line 1.
BEGIN failed--compilation aborted at -e line 1.
linux:~ #
User since
2003-08-04
2145
Artikel
ModeratorIn + EditorIn
Ich fürchte dann, dass die Installation mit der CPAN-Shell doch nicht geklappt hat, auch wenn es vielleicht so aussah. Ich gehe mal davon aus, dass du nicht zwei verschiedene Perl-Installationen auf dem Rechner hast, das kann als Fehlerquelle also wohl ausgeschlossen werden. Es wäre aber interessant, wenn du das "install NetAddr::IP" nochmal in der CPAN-Shell ausführen könntest - evtl. als "force install NetAddr::IP", wenn es behauptet, schon installiert zu sein - und dann mal genau schaust, in welchem Pfad das Modul installiert wird.
View
all threads created 2006-03-02 16:34.