2010-11-29 8 views
2

Ich versuche CPAN-Modul auf Windows 7 zu installieren. Ich habe keine aktive Perl, so kann PPM-Paket nicht verwenden.Installation von CPAN-Modul unter Windows

Die auf allen Websites angegebenen Schritte umfassen die folgenden drei Schritte: make, make test und make install. Ich weiß, dass make Unix-Befehl ist und nicht unter Windows laufen wird.

Welchen Befehl soll ich unter Windows ausführen, um die Installation abzuschließen?

I dmake von CPAN-Website heruntergeladen, wie durch einen der Website erwähnt, aber wenn ich es laufen, es gibt Fehler folgende -

D:\Parse-RecDescent-1.965001.tar\Parse-RecDescent-1.965001>D:\dmake\dmake\dmake dmake: Error: -- `D:\indigoampp\perl-5.12.1\libConfig.pm' not found, and can't be made

Bitte lassen Sie mich wissen, wie soll ich diese Schritte ausführen. Vielen Dank!

PS: Auch hier ist PPM keine Option.


Danke an alle.

Es gibt eine Datei namens Config_heavy.pl bei indigoampp \ perl-5.12.1 \ lib location. Es hatte eine Zeile: make = 'nmake'. Ich habe das geändert, um = dmake zu machen, da ich dmake-Befehle verwende.

Danach musste ich DIRFILESEP in Makefile jedes Moduls nicht ändern. Es erzeugt jetzt \\ wie in den obigen Links erwähnt.

So kann ich dmake, dmake test und dmake installieren jetzt ausführen. Es macht jedoch nichts. Es hat keine pm-Datei/Dateien an den entsprechenden Orten kopiert. Warum so ??

Wie auch immer, ich manuell kopiert pm Datei/Dateien in der Hoffnung, dass alles funktionieren sollte. Das konnte ich aber auch vorher tun. Warum habe ich makefile.pl und dmake Befehle ausgeführt?

Auch mein Ziel war es, Apache2 :: Request-Modul zu installieren. Ich fand, dass es von mehreren Modulen abhängig ist. Ich habe diese Module heruntergeladen und die obigen Befehle ausgeführt - kein Fehler als solcher. Am Ende, wenn ich diese Schritte für Apache2 :: Anfrage Modul lief, erhalten folgende ich Fehler in dmake Befehl:

D:\libapreq2-2.12.tar\libapreq2-2.12>dmake 
dmake: makefile: line 25: Warning: -- Duplicate target [Release] 
dmake: makefile: line 25: Warning: -- Duplicate target [Release] 
dmake: makefile: line 25: Warning: -- Duplicate target [!=] 
dmake: makefile: line 25: Error: -- Expecting macro or rule defn, found neith 
er 

finde ich nicht etwas Verdächtiges in Makefile unter libapreq2-2.12.tar \ libapreq2-2.12 Mappe. Der partical Inhalt von Makefile (um die Fehlerzeile) ist:

LIBAPREQ=libapreq2 
APREQ2_TEST=apreq2_test 
CGITEST=test_cgi 
MOD=mod_apreq2 

!IF "$(CFG)" != "Release" && "$(CFG)" != "Debug" 
!MESSAGE Invalid configuration "$(CFG)" specified. 
!MESSAGE You can specify a configuration when running NMAKE 
!MESSAGE by defining the macro CFG on the command line. For example: 
!MESSAGE 
!MESSAGE NMAKE CFG="Release" 
!MESSAGE 
!MESSAGE Possible choices for configuration are: 
!MESSAGE 
!MESSAGE "Release" (based on "Win32 (x86) Console Application") 
!MESSAGE "Debug" (based on "Win32 (x86) Console Application") 
!MESSAGE 
!ERROR An invalid configuration is specified. 
!ENDIF 

!IF "$(APACHE)" == "" 
!MESSAGE No Apache directory was specified. 
!MESSAGE Please run Configure.bat to specify a valid Apache directory. 
!ERROR 
!ENDIF 

Kann jemand mit dieser & obigen Frage helfen (warum es nicht kopiert hat pm Dateien automatisch)? Vielen Dank für Ihre Zeit!

+0

Sie Frage ist ähnlich http://cpanzforum.com/posts/9514 und vielleicht sollte dies lösen: http://cpanzforum.com/posts/9716. –

+0

Check out Strawberry Perl (http://strawberryperl.com/), die eine gute Perl-Distribution für Windows ist, die mit 'dmake' und anderen Tools zum Erstellen von XS-Modulen unter Windows kommt. –

+0

'make' ist ein Programm, das normalerweise auf UNIX-Systemen gefunden wird, aber es ist für Windows verfügbar (und Strawberry Perl wird eine Kopie liefern) – Quentin

Antwort

1

Manchmal, um ein Perl-Modul zu installieren, müssen Sie nur die .pm-Datei in das entsprechende Verzeichnis in perl/site oder perl/lib kopieren. Die Standardprozedur zum Installieren eines Perl-Moduls beinhaltet immer das Ausführen von make, aber in vielen Fällen besteht das gesamte make darin, die .pm-Datei in perl/site oder perl/lib zu kopieren. Aber wenn das Perl-Modul einen niedrigen Zugriff auf die Windows-Bibliotheken benötigt, dann brauchen Sie mehr als nur 'make', Sie brauchen eine ganze C-Tool-Kette.

Wenn ActiveState Perl gegen Ihre Religion ist, sollten Sie eine Cygwin-Umgebung herunterladen und installieren. Wählen Sie Perl und die C-Entwicklungswerkzeuge (so genannte Binutils) für die Cygwin-Installation aus.

Aber ich sage dir, es ist schwer zu schlagen ActiveState Perl. Es ist die vollständigste Perl-Lösung für eine Windows-Plattform. Und es ist kostenlos!

+5

Die Dinge haben sich seit 2006 geändert. Es lohnt sich, einen Blick auf http: //win32.perl zu riskieren. org, um einige gesunde Konkurrenz zu sehen. – daxim

6

Sieht so aus, als ob Sie Indigo Perl verwenden. Laut ihrer Website haben sie ihren eigenen Paketmanager namens IPM - hast du das probiert?

Aber für Windows Perl Arbeit, würde ich wirklich empfehlen, Blick auf Strawberry Perl.

+0

Ich habe IPM nicht verwendet. Ich werde es mir jetzt ansehen. Vielen Dank. –

+0

Ich überprüfe auch Strawberry Perl. Ich brauchte tatsächlich ein Perl mit mod_perl2 (da ich Probleme hatte, mod_perl2 mit Perl zu integrieren) und deshalb habe ich das All In One Indigo-Paket installiert, das mit Apache & Perl (mit mod_perl2) geliefert wurde. –

Verwandte Themen