Frage

Hier ist meine Situation: Ich weiß fast nichts über Perl, aber es ist die einzige Sprache auf einer Portierung Maschine zur Verfügung. Ich habe nur Berechtigungen in meinem lokalen Arbeitsbereich zu schreiben und nicht die Perl Standort installieren. Ich brauche die Parallel :: ForkManager Perl CPAN-Modul zu verwenden,

Wie verwende ich diese Parallele :: ForkManager ohne eine zentrale installieren zu tun? Gibt es eine Umgebungsvariable, die ich einstellen kann, so befindet er sich?

Danke

JD

War es hilfreich?

Lösung

perlfaq8: Wie halte ich mein eigenes Modul / Bibliotheksverzeichnis :

Wenn Sie Module bauen, sagt Perl, wo die Module zu installieren.

Für C-basierten Distributionen, verwenden Sie die Option INSTALL_BASE bei der Generierung von Makefiles:

perl Makefile.PL INSTALL_BASE=/mydir/perl

Sie können in Ihrer CPAN.pm Konfiguration setzen Sie diese so Module automatisch installieren in Ihrem privaten Bibliotheksverzeichnis, wenn Sie den CPAN.pm Shell:

% cpan
cpan> o conf makepl_arg INSTALL_BASE=/mydir/perl
cpan> o conf commit

Für C-basierten Distributionen, verwenden Sie die Option --install_base:

perl Build.PL --install_base /mydir/perl

Sie können CPAN.pm so konfigurieren, dass diese Option auch:

% cpan
cpan> o conf mbuild_arg --install_base /mydir/perl
cpan> o conf commit

INSTALL_BASE erzählt diese Tools um Ihre Module setzen in F. Siehe L für Details, wie die neu laufen installiert moudles.

Es gibt eine Einschränkung mit INSTALL_BASE, obwohl, da es wirkt anders als die Vorsilbe und LIB-Einstellungen, die älteren Versionen von ExtUtils :: Makemaker befürwortet. INSTALL_BASE nicht unterstützt Installation von Modulen für mehrere Versionen von Perl oder verschiedene Architekturen im selben Verzeichnis. Sie sollten, wenn man bedenkt, wirklich wollen, dass, und wenn Sie das tun, verwenden Sie die ältere PREFIX und LIB die Einstellungen. Siehe die ExtUtils :: Makemaker Dokumentation für weitere Details.

Andere Tipps

Sehen Sie sich diesem Beitrag von Mark Dominus

Auszug:

  
      
  • Set PREFIX = X, wenn die Makefile Aufbau
  •   
  • Set INSTALLDIRS = Anbieter und VENDORPREFIX = X beim Bau des Makefile      
        
    • Oder vielleicht statt VENDORPREFIX müssen Sie INSTALLVENDORLIB oder etwas
    • einstellen   
    • Oder vielleicht, anstatt sie einstellen, während das Makefile bauen Sie brauchen, um sie zu setzen, während das make install Ziel läuft
    •   
  •   
  • Stellen Sie LIB = X / lib beim Erstellen des Makefile
  •   
  • Verwenden PAR
  •   
  • Verwenden local :: lib
  •   

Mark geben auch eine andere Lösung in seinem Blog, die etwas mehr Platz braucht, um zu desribe aber läuft darauf hinaus, Lauftest machen und, aber nicht machen installieren und dann das Material in blib mit /.

Download-Paket Formular CPAN in einen Ordner:

wget http://search.cpan.org/CPAN/authors/id/S/SZ/SZABGAB/Parallel-ForkManager-1.06.tar.gz
gunzip Parallel-ForkManager-1.06.tar.gz
tar -xvf Parallel-ForkManager-1.06.tar

, bevor diese einen Ordner im Hause der lokalen Module zu speichern, die jetzt in heruntergeladenen Ordner gehen und laufen cmmands follwing:

perl Makefile.PL PREFIX=/home/username/myModules
make
make test
make install

erhalten Sie den Pfad zu ForkManager aus dem installierten Ordner / home / username / myModules und Parallel-Ordner suchen und den vollständigen Pfad zu dieser erhalten.

Jetzt in Ihrem Perl-Datei setzen diese sich am Anfang

use lib '/home/username/myModules/bin.../Parallel';
use parallel::ForkManager;

-. Das sollte es tun

Es gibt die PERL5LIB Umgebungsvariable, und -I in der Befehlszeile, wenn es um die Verwendung des Moduls kommt. Es gibt Mechanismen für CPAN und CPANPLUS erzählen.

Es gibt Informationen in Frage 5 des CPAN Handbuch (perldoc CPAN, oder schauen Sie auf CPAN selbst) .

use lib 'directory';
use Parallel::ForkManager;

Sie können die -I (Kapital i) Befehlszeilenoption durch das Verzeichnis gefolgt, wo Sie das Modul platzieren werden; oder versuchen, die „use lib“ Richtlinie durch das Verzeichnis gefolgt.

perl Makefile.PL LIB=/my/perl_modules/lib/
make
make install
PERL5LIB=$PERL5LIB:/my/perl_modules/lib/
perl myperlcode.pl

Verwendung cpanm -l $DIR_NAME Option.

Betrachten cpanminus verwenden, ein auf diesem anderen Thread

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top