Perl-Modul nicht finden kann, die in @INC
Ich bin mit Centos 6.4 und perl 5.10. Ich habe kurze Skript verwendet die DateTime
Modul. Allerdings, wenn ich mein Skript auszuführen, bekomme ich die folgende Fehlermeldung, die sagen mir verschiedene Module nicht gefunden werden können, da Sie nicht in der Bibliothek Weg.
Can't locate Params/Validate.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at /usr/lib64/perl5/DateTime/Duration.pm line 11.
BEGIN failed--compilation aborted at /usr/lib64/perl5/DateTime/Duration.pm line 11.
Compilation failed in require at /usr/lib64/perl5/DateTime.pm line 45.
BEGIN failed--compilation aborted at /usr/lib64/perl5/DateTime.pm line 45.
Compilation failed in require at ./jr_fix_western_filestore.perl line 39.
BEGIN failed--compilation aborted at ./jr_fix_western_filestore.perl line 39.
Alle diese Pakete wurden installiert per yum. zB yum install perl-Params-Validate.x86_64
und yum install perl-DateTime.x86_64
. Sollte die yum installieren Sie nicht diese Module, die in @INC?
Habe ich auch versucht zu installieren, die Pakete über cpan aber das scheint zu herunterladen möchten viele Abhängigkeiten zuerst und zwangsläufig fehl.
CPAN.pm: Going to build D/DR/DROLSKY/DateTime-1.03.tar.gz
Can't locate Module/Build.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at Build.PL line 5.
BEGIN failed--compilation aborted at Build.PL line 5.
Warning: No success on command[/usr/bin/perl Build.PL --installdirs site]
Warning (usually harmless): 'YAML' not installed, will not store persistent state
DROLSKY/DateTime-1.03.tar.gz
/usr/bin/perl Build.PL --installdirs site -- NOT OK
Running Build test
Make had some problems, won't test
Running Build install
Make had some problems, won't install
Could not read '/root/.cpan/build/DateTime-1.03-Brpqo5/META.yml'. Falling back to other methods to determine prerequisites
Warning: CPAN.pm discovered Module::Build as undeclared prerequisite.
Adding it now as such.
Wenn ich versuche zu install Module::Build in cpan, bekomme ich die folgende Fehlermeldung
Running make test
Can't test without successful make
Running make install
Make had returned bad status, install seems impossible
Failed during this command:
OVID/Test-Harness-3.28.tar.gz : make_test NO
MSCHWERN/Test-Simple-0.98.tar.gz : make_test NO
JPEACOCK/version-0.9902.tar.gz : make_test NO
BOBTFISH/Module-Metadata-1.000014.tar.gz : make_test NO
DAGOLDEN/CPAN-Meta-YAML-0.008.tar.gz : make_test NO
MAKAMAKA/JSON-PP-2.27202.tar.gz : make_test NO
DAGOLDEN/Parse-CPAN-Meta-1.4404.tar.gz : make_test NO
DAGOLDEN/CPAN-Meta-Requirements-2.122.tar.gz : make_test NO
DAGOLDEN/CPAN-Meta-2.130880.tar.gz : make_test NO
DAGOLDEN/Perl-OSType-1.003.tar.gz : make_test NO
JESSE/Locale-Maketext-Simple-0.21.tar.gz : make_test NO
BINGOS/Params-Check-0.36.tar.gz : make_test NO
BINGOS/Module-Load-0.24.tar.gz : make_test NO
BINGOS/Module-CoreList-2.91.tar.gz : make_test NO
BINGOS/Module-Load-Conditional-0.54.tar.gz : make_test NO
BINGOS/IPC-Cmd-0.80.tar.gz : make_test NO
DAGOLDEN/ExtUtils-CBuilder-0.280205.tar.gz : make_test NO
LEONT/Module-Build-0.4005.tar.gz : make NO
Irgendwelche Hinweise?
rpm -ql perl-Params-Validate
gibt
/usr/lib64/perl5/vendor_perl/5.8.5/x86_64-linux-thread-multi/Attribute
/usr/lib64/perl5/vendor_perl/5.8.5/x86_64-linux-thread-multi/Attribute/Params
/usr/lib64/perl5/vendor_perl/5.8.5/x86_64-linux-thread-multi/Attribute/Params/Validate.pm
/usr/lib64/perl5/vendor_perl/5.8.5/x86_64-linux-thread-multi/Params
/usr/lib64/perl5/vendor_perl/5.8.5/x86_64-linux-thread-multi/Params/Validate.pm
/usr/lib64/perl5/vendor_perl/5.8.5/x86_64-linux-thread-multi/Params/ValidatePP.pm
/usr/lib64/perl5/vendor_perl/5.8.5/x86_64-linux-thread-multi/Params/ValidateXS.pm
/usr/lib64/perl5/vendor_perl/5.8.5/x86_64-linux-thread-multi/auto/Params
/usr/lib64/perl5/vendor_perl/5.8.5/x86_64-linux-thread-multi/auto/Params/Validate
/usr/lib64/perl5/vendor_perl/5.8.5/x86_64-linux-thread-multi/auto/Params/Validate/Validate.bs
/usr/lib64/perl5/vendor_perl/5.8.5/x86_64-linux-thread-multi/auto/Params/Validate/Validate.so
/usr/share/doc/perl-Params-Validate-0.95
/usr/share/doc/perl-Params-Validate-0.95/Changes
/usr/share/doc/perl-Params-Validate-0.95/LICENSE
/usr/share/doc/perl-Params-Validate-0.95/MANIFEST
/usr/share/doc/perl-Params-Validate-0.95/META.yml
/usr/share/doc/perl-Params-Validate-0.95/README
/usr/share/doc/perl-Params-Validate-0.95/TODO
/usr/share/man/man3/Attribute::Params::Validate.3pm.gz
/usr/share/man/man3/Params::Validate.3pm.gz
/usr/share/man/man3/Params::ValidatePP.3pm.gz
/usr/share/man/man3/Params::ValidateXS.3pm.gz
Ich bin mir nicht sicher, ob diese Pfade werden durchsucht @INC
Jedoch locate Validate.pm
gibt nichts
rpm -ql perl-Params-Validate
plus haben Sie machen installiert (yum groupinstall "Development Tools"
)?um zu überprüfen, wo Pakete sind, versuchen Sie es mit
locate
im terminal. E. g. überprüfen Sie locate Validate.pm
Die Ausgabe von
rpm -ql
zeigt deutlich, dass das Paket installiert ist, ein perl-5.8-Paket. Jedoch, Sie erzählte uns, Sie waren mit 5.10. Komisch.perl -V
werden die Antwort auf Ihre Letzte Frage, ob diese Verzeichnisse durchsucht werden.
InformationsquelleAutor moadeep | 2013-05-24
Du musst angemeldet sein, um einen Kommentar abzugeben.
Scheint, dass Sie haben RPMforge konfiguriert für RHEL /Centos 4, aber Sie verwenden Centos 6:
Befolgen Sie die Anweisungen von diese Website und globalen dist-upgrade zu beheben gebrochenen Abhängigkeiten (ich, du bist das Glück neu zu installieren wird nicht mehr benötigt). Dann installieren Sie perl-Pakete, die Sie wollen.
Die Seite, auf der Sie links zu aktuell sagt "RPMForge/RepoForge ist ein Totes Projekt. Es ist nicht gepflegt. BENUTZEN SIE NICHT." - siehe github.com/repoforge/rpms/issues/375. Ich denke, man sollte ganz aufgeben, RPMForge. Für historische Zwecke, Web-Archiv verwendet werden können um zu sehen, was war auf dieser Seite.
InformationsquelleAutor Xaerxess
suchen und installieren
dieser arbeitete für mich.,
InformationsquelleAutor AMB
Ich bin zu spät zu der Diskussion, aber hatte das gleiche problem. Hier ist, wie ich es gelöst.
CPAN gab mir die gleichen Fehler, weil in einer älteren version installiert wurde, unter yum. Ich aktualisiert, das Paket mit yum und war in der Lage, vorwärts zu bewegen.
InformationsquelleAutor Mike T