Standardmäßig sucht RPM nach den Perl-Modulen innerhalb des RPM selbst und gibt einen Abhängigkeitsfehler aus, wenn sie nicht gefunden werden. Ich habe beispielsweise ein Perl-Skript im RPM, das ein Crypt::DES
Perl-Modul verwendet. Ich habe dieses Perl-Modul im System ( /usr/local/lib64/perl5/Crypt/DES.pm
) und dieses Verzeichnis ist enthalten. @INC
Wenn ich versuche, das RPM-Paket zu installieren:
[jai@orange x86_64]$ rpm -ivh abc-1-1.el6.x86_64.rpm
error: Failed dependencies:
...(some other perl modules)
perl(Crypt::DES) is needed by abc-1.el6.x86_64
...(some other modules)
Aber wenn ich dieses Perl-Modul (DES.pm) in den Quellcode des RPM einfüge, wird der Abhängigkeitsfehler für dieses Perl-Modul nicht angezeigt.
Und meine Frage ist, wie ich in RPM (möglicherweise in einer Spezifikationsdatei) angeben kann, dass auch nach Perl-Abhängigkeiten im System gesucht werden soll?
Antwort1
Sie sollten in der Lage sein, etwas wie das Folgende in Ihre Spezifikationsdatei aufzunehmen:
Requires: perl(Crypt::DES)
Sie können auch prüfen, ob Ihre Distribution ein Perl-Crypt-DES-Paket bereitstellt und dieses verwenden, anstatt die Dateien manuell unter /usr/local/ abzulegen.