Anfängerfrage: Wie Perl-Script ausführen?

_Johnny_

Neues Mitglied
Thread Starter
Dabei seit
28.02.2005
Beiträge
18
Reaktionspunkte
0
Hallo erstmal!

Bin ein Neuling mit Mac und PC-Laie. Nun habe ich ein Perl-Script, das für einen Chat ein paar zusätzliche Funktionen liefern soll.
Als Anleitung steht aber nur: Die Datei muss ausführbar gemacht werden.
Wie mache ich das? Ich habe die Datei heruntergeladen, es ist eine Textdatei, glaube ich.

MfG

JOhnny
 
Willst du die Datei auf dem Mac oder auf dem PC laufen lassen.
Also ausführbar machen versteh ich ja nun nicht ganz. Wenn keine Syntax und SemantikFehler in der Datei stecken, dann ist sie natürlich (so natürlich nun auch wieder nicht , aber das würde jetzt zu weit führen...) ausführbar.

Ich mach das beim Mac immer so:
Terminal öffnen
dann in den Ordner gehen, wo das Skript liegt...
zum Beispiel
cd /Users/deinUsername/Desktop/
und dann
perl -w yourScript.perl (evtl Input1 Input2)

Habe ich sie geholfen? :D

Übrigens ist das eher ein Thema für Einsteiger oder noch besser Programmieren....
Moderatoren wo seid ihr? :eek:
 
Zuletzt bearbeitet:
Vielleicht bezieht sich die Anleitung auf Unix/Linux? Da muss man Dateien nämlich vorher ausführbar machen.
 
grind schrieb:
Willst du die Datei auf dem Mac oder auf dem PC laufen lassen.
Also ausführbar machen versteh ich ja nun nicht ganz. Wenn keine Syntax und SemantikFehler in der Datei stecken, dann ist sie natürlich (so natürlich nun auch wieder nicht , aber das würde jetzt zu weit führen...) ausführbar.

Ich mach das beim Mac immer so:
Terminal öffnen
dann in den Ordner gehen, wo das Skript liegt...
zum Beispiel
cd /Users/deinUsername/Desktop/
und dann
perl -w yourScript.perl (evtl Input1 Input2)

Habe ich sie geholfen? :D

Übrigens ist das eher ein Thema für Einsteiger oder noch besser Programmieren....
Moderatoren wo seid ihr? :eek:

Hallo!
Habe ein ähnliches Problem, bin im Terminal mit "cd /Users etc." bis zu meinem Ordner, in dem das Perl-Script liegt, vorgedrungen und wollte das Script mit "perl -w [Name des Scripts (= gink)]" ausführbar machen.
Jedoch reagierte Terminal mit folgender Fehlermeldung:

Can't locate Curses.pm in @INC (@INC contains: /System/Library/Perl/5.8.1/darwin-thread-multi-2level /System/Library/Perl/5.8.1 /Library/Perl/5.8.1/darwin-thread-multi-2level /Library/Perl/5.8.1 /Library/Perl /Network/Library/Perl/5.8.1/darwin-thread-multi-2level /Network/Library/Perl/5.8.1 /Network/Library/Perl .) at gink line 26.
BEGIN failed--compilation aborted at gink line 26.

Was ist da geschehen? Wo bekomme ich "Curses.pm" her und wo muss ich diese installie
 
Langeweile schrieb:
Hallo!
Habe ein ähnliches Problem, bin im Terminal mit "cd /Users etc." bis zu meinem Ordner, in dem das Perl-Script liegt, vorgedrungen und wollte das Script mit "perl -w [Name des Scripts (= gink)]" ausführbar machen.
Jedoch reagierte Terminal mit folgender Fehlermeldung:

Can't locate Curses.pm in @INC (@INC contains: /System/Library/Perl/5.8.1/darwin-thread-multi-2level /System/Library/Perl/5.8.1 /Library/Perl/5.8.1/darwin-thread-multi-2level /Library/Perl/5.8.1 /Library/Perl /Network/Library/Perl/5.8.1/darwin-thread-multi-2level /Network/Library/Perl/5.8.1 /Network/Library/Perl .) at gink line 26.
BEGIN failed--compilation aborted at gink line 26.

Was ist da geschehen? Wo bekomme ich "Curses.pm" her und wo muss ich diese installie
Bekommst Du unter http://www.cpan.org/ - aber so einfach mit dem Installieren ist das nicht - da musst Du mal nach "perl" und "modul installieren" suchen...gibts genug Anleitungen im Netz
 
ich habe ein ähnliches problem. bei mir kommt der output:
Code:
Can't locate WWW/Mechanize.pm in @INC (@INC contains: modules /System/Library/Perl/5.8.6/darwin-thread-multi-2level /System/Library/Perl/5.8.6 /Library/Perl/5.8.6/darwin-thread-multi-2level /Library/Perl/5.8.6 /Library/Perl /Network/Library/Perl/5.8.6/darwin-thread-multi-2level /Network/Library/Perl/5.8.6 /Network/Library/Perl /System/Library/Perl/Extras/5.8.6/darwin-thread-multi-2level /System/Library/Perl/Extras/5.8.6 /Library/Perl/5.8.1 .) at test.pl line 5.
BEGIN failed--compilation aborted at test.pl line 5.

Dieses Perlscript ist aus einem Widget, und dort funktioniert es mit dem aufruf widget.system("test.pl"). aber im Terminal mit perl -w test.pl geht es nicht. Warum?
 
Ist doch ganz einfach ...

Perl und CGI-Dateien müssen mit chmod 755 ausführbar gemacht werden und als Text-File im Text-Modus auf den Server in das Verzeichnis /cgi-bin übertragen werden.

Auch dieses Verzeichnis /cgi-bin muß die Rechte 755 besitzen, damit enthaltene Scripte ausgeführt werden können.

Ende der Durchsage ...
 
_Johnny_ schrieb:
Hallo erstmal!

Bin ein Neuling mit Mac und PC-Laie. Nun habe ich ein Perl-Script, das für einen Chat ein paar zusätzliche Funktionen liefern soll.
Als Anleitung steht aber nur: Die Datei muss ausführbar gemacht werden.
Wie mache ich das? Ich habe die Datei heruntergeladen, es ist eine Textdatei, glaube ich.

MfG

JOhnny

Ausführbar machen geht mit chmod,

die weiteren Fehler, die "can't locate .." enthalten, beziehen sich auf fehlende Bibliotheken. Da müßt ihr sichergehen, daß die korrekten Bibliotheken auf dem System vorhanden, und im richtigen Verzeichnis sind.
 
balufreak schrieb:
ich habe ein ähnliches problem. bei mir kommt der output:
Code:
Can't locate WWW/Mechanize.pm in @INC (@INC contains: modules /System/Library/Perl/5.8.6/darwin-thread-multi-2level /System/Library/Perl/5.8.6 /Library/Perl/5.8.6/darwin-thread-multi-2level /Library/Perl/5.8.6 /Library/Perl /Network/Library/Perl/5.8.6/darwin-thread-multi-2level /Network/Library/Perl/5.8.6 /Network/Library/Perl /System/Library/Perl/Extras/5.8.6/darwin-thread-multi-2level /System/Library/Perl/Extras/5.8.6 /Library/Perl/5.8.1 .) at test.pl line 5.
BEGIN failed--compilation aborted at test.pl line 5.

Dieses Perlscript ist aus einem Widget, und dort funktioniert es mit dem aufruf widget.system("test.pl"). aber im Terminal mit perl -w test.pl geht es nicht. Warum?

Weil das Widget zusätzliche Parameter übergibt, damit das Perl Skript die Mechanize.PM findet. Diese Datei einfach mal in eines der oben aufgeführten Perl Library Verzeichnisse kopieren, und schon sollte es gehen.

BTW: einfach ./Skriptname eingeben zum ausführen, das perl -w davor ist unnötig
 
ja ich hab den fehler gefunden. Ich musste im perl script einen Pfad anpassen. Dann hat es funktioniert.

Greets balu
 
Zurück
Oben Unten