perl findet cpan-Modul nicht

02/01/2008 - 11:21 von helmut | Report spam
Hallo alle miteinander,

ich habe hier bei einer Slackware-Installation neuerdings ein Problem,
vielleicht mit mehreren Perl-Programmen, sicher mit dem Programm
"iwatch". "iwatch" hat etliche Monate brav funktioniert.

iwatch --help liefert jetzt

Can't locate Event.pm in @INC (@INC contains:
/usr/lib/perl5/5.8.8/i486-linux-thread-multi
/usr/lib/perl5/5.8.8
/usr/lib/perl5/site_perl/5.8.8/i486-linux-thread-multi
/usr/lib/perl5/site_perl/5.8.8
/usr/lib/perl5/site_perl/5.8.7
/usr/lib/perl5/site_perl/5.8.6
/usr/lib/perl5/site_perl/5.8.5
/usr/lib/perl5/site_perl) at /usr/bin/iwatch line 14.
BEGIN failed--compilation aborted at /usr/bin/iwatch line 14.

Die Suche nach "Event.pm" liefert

/root/.cpan/build/Event-1.08/lib/Event.pm
/root/.cpan/build/Event-1.08/blib/lib/Event.pm
/root/.cpan/build/Linux-Inotify-0.05/lib/Linux/Inotify/Event.pm
/root/.cpan/build/Linux-Inotify-0.05/blib/lib/Linux/Inotify/Event.pm
/root/.cpan/build/Event-1.09/lib/Event.pm
/usr/lib/perl5/site_perl/5.8.8/i486-linux/Event.pm
/usr/lib/perl5/site_perl/5.8.8/Linux/Inotify/Event.pm

Vor einiger Zeit lief alles brav, inzwischen habe ich (beim Wechsle von
slackware 11.x nach 12.0) etliche Pakete geàndert.
Und seit kurzer Zeit ist auch das Paket "inotify-tools" dazugekommen -
mag sein, dass das wichtig ist.

Die cpan.Module pflege ich mit "cpan2tgz" anzufertigen, ich kann aber
notfalls auch mit cpan umgehen.


Sind "nur" einige Pfade anzupassen oder zu korrigieren? Wenn ja: wo (und
vielleicht auch wie)? Könnten symbolische Links reichen, oder erzeuge
ich damit Chaos?

Viele Gruesse!
Helmut
 

Lesen sie die antworten

#1 Ekki Plicht (DF4OR)
02/01/2008 - 13:35 | Warnen spam
Helmut Hullen wrote:

Can't locate Event.pm in @INC (@INC contains:
/usr/lib/perl5/5.8.8/i486-linux-thread-multi
/usr/lib/perl5/5.8.8
/usr/lib/perl5/site_perl/5.8.8/i486-linux-thread-multi


^^^^^^^^^^^^
/usr/lib/perl5/site_perl/5.8.8
/usr/lib/perl5/site_perl/5.8.7
/usr/lib/perl5/site_perl/5.8.6
/usr/lib/perl5/site_perl/5.8.5
/usr/lib/perl5/site_perl) at /usr/bin/iwatch line 14.
BEGIN failed--compilation aborted at /usr/bin/iwatch line 14.

Die Suche nach "Event.pm" liefert

/root/.cpan/build/Event-1.08/lib/Event.pm
/root/.cpan/build/Event-1.08/blib/lib/Event.pm
/root/.cpan/build/Linux-Inotify-0.05/lib/Linux/Inotify/Event.pm
/root/.cpan/build/Linux-Inotify-0.05/blib/lib/Linux/Inotify/Event.pm
/root/.cpan/build/Event-1.09/lib/Event.pm
/usr/lib/perl5/site_perl/5.8.8/i486-linux/Event.pm


^^^^^^^^^^
/usr/lib/perl5/site_perl/5.8.8/Linux/Inotify/Event.pm

Vor einiger Zeit lief alles brav, inzwischen habe ich (beim Wechsle von
slackware 11.x nach 12.0) etliche Pakete geàndert.



Es sieht so aus als ob bei deiner neuestens Slackware Version Perl jetzt mit
threads enabled erstellt wurde, Event.pm aber zu einer Zeit installiert
wurde als das noch nicht der Fall war.

Das kannst Du rausfinden indem Du mal mit
$ perl -V |grep threads
guckst wie useithread bzw. usethreads gesetzt ist. In Abhàngigkeit davon
àndert sich @INC.

Mit threads enabled wird u.a. in
/usr/lib/perl5/site_perl/5.8.8/i486-linux-thread-multi
gesucht, ohne threads in
/usr/lib/perl5/site_perl/5.8.8/i486-linux
Dort ist dein Event.pm, wird aber nicht mehr gefunden.

Lösungen:
@INC anpassen oder
perl neu compilieren, ohne -Duseithread, oder
oder Event.pm neu installieren.


Gruß,
Ekki

Ähnliche fragen