perl

J

-Jedi-

Eroberer
Kann mir wer ne anleitung geben wie ich perl auf nem linux installiere?
mit der auf der offiziellen seite komm ich ned klar.

und auserdem: wenn ich ein perl prog schreibe, kompiliere und an nen freund sende, was muss er bereits installiert haben?
.
.
.
EDIT (autom. Beitragszusammenführung) :
.

laut perl -v isses schon drauf aber nicht auf usr/local/bin/perl
ka wo.
 
Zuletzt bearbeitet:
der paketmanager deiner distribution sollte dir bei der suche nach "perl" genug liefern. dein freund sollte selbstverständlich auch perlpaket installieren.

das man unter perl compilieren kann währe mir neu ich kenne das "nur" als reinen interpreter.( aber die zeit vergeht schnell :oldman und könnte mich einen lügner strafern )
.
.
.
EDIT (autom. Beitragszusammenführung) :
.

Code:
which perl
 
Zuletzt bearbeitet:
Wie b00 schon sagte, unter Perl wird nicht kompiliert.
Code:
$ perl test.pl

Dein Freund(oder was auch immer) muss eigentlich den Code genauso ausführen wie Du, und wie es oben steht...
 
*meep* falsch. Perl lässt sich kompilieren :). Ist aber ziemlich experimentell.

man perlcc
 
Ja nur was bringt die Perl kompilierung wenn ich es sowieso "interpretern" kann ?

MfG,
Buchi
 
Auch wenn es Offtopic ist: Zu welchen Zeiten unterhaltet ihr euch hier denn? Das ist doch nicht normal! :)
 
Nein,

hier wird ja so einiges durcheinander geworfen.

Um das mal klarzustellen bzw. mit ein paar Mißverständnissen aufzuräumen:

Kompilieren == Übersetzen von source-code in eine Sprache die eine ANDERE Maschine versteht.

__Jede__ interpretierte Sprache wird zunächst einmal kompiliert und zwar in eine Sprache die der Interpreter versteht.

Im Falle von Perl sieht das stark verkürzt so aus:

-> Der Perl-Compiler (ja, der heisst so) übersetzt den source-code in einen parsing-tree mit perl-internen opcodes.
-> dieser parsing-tree wird nun dem Perl-Interpreter übergeben.

Analog dazu als Beispiel:

Bei java wird der source-code von javac, dem java-Compiler in bytecode übersetzt der von java, dem Interpreter anschließend ausgeführt wird.

Was man landläufig mit kompilierten Sprachen meint, soll heissen das der source-code direkt in eine Form übersetzt wird die die CPU versteht.

Das hat aber nichts damit zu tun, das nicht auch interpretierte Sprachen vorher kompiliert werden.
 
compilen bringt idr geschwindigkeitsvorteil gegenüber interpreter ist dann aber platformgebunden.

alle fragen beantwortet?
 
@supersucker: du meinst, der mit perlcc kompilierte Code ist nicht ohne Perl-Interpreter ausführbar da Bytecode? Ich war der Meinung, es macht ein Standalone Binary.

@buchi: bringen würde es folgendes:
- Kein Perl Interpreter (siehe Diskussion mit Supersucker)
- Proprietäre Programme möglich
 
angelsfall schrieb:
Auch wenn es Offtopic ist: Zu welchen Zeiten unterhaltet ihr euch hier denn? Das ist doch nicht normal!

Also ich habe heute in der Arbeit nicht wirklich viel zu tun, so surf ich halt auf unixboard und schreib :D

...
Ja eben und das ist ja das was zb. Java ausmacht, dass ich es nicht kompilieren muss und es desshalb Plattformunabhängig ist.

MfG,
Buchi
 
@supersucker: du meinst, der mit perlcc kompilierte Code ist nicht ohne Perl-Interpreter ausführbar da Bytecode? Ich war der Meinung, es macht ein Standalone Binary.

Da hast du auch völlig recht. Ich meinte gerade den "normalen" perl-Weg, sprich wenn du ein script ausführst. Da werden diese Schritte "compile -> parsing tree -> interpreter" ja vor dem User "verheimlicht" da er von diesen Vorgängen nichts mitbekommt.

@boo und buchi:

Nochmal, was ihr als kompilieren bezeichnet ist der Weg "sourcecode" -> cpu-code, sprich 1 und 0. Prinzipiell unterscheidet man aber 3 Arten von Kompilieren:

src -> interpreter-Sprache
src -> assembler
src -> "1sen und 0en"
 
Und ich frage mich gerade, auf welchem Linux-System es kein Perl per Default gibt.
IMHO ist das essentiell bei jeder Base-Install dabei.
Und nochmal zum Thema Interpreter:
Interpretersprachen zeichnen sich dadurch aus, dass diese internen Vorgänge zur Laufzeit passieren!
Das bedeutet, dass ein Script sofort ausführbar(interpretiert wird) ist.
Skriptsprachen haben ihr Einsatzgebiet genauso wie Copiliersprachen.
Über Vor und Nachteile brauchen wir hier nicht diskutieren, da es immer um das Einsatzgebiet geht.

Gruß Wolfgang
 
@Wolfgang: es geht wohl eher um Portabilität.. ich wäre froh, wenn ich das Zeugs stabil kompilieren könnte. Auf Windows ist Perl nicht per se dabei und wenn du Perl Programmierer bist, bist du doch auch froh wenn du den Leuten ein Binary schieben könntest ohne ein HOWTO wie sie jetzt Perl & die ganzen Module noch installieren.
 
Man könnte sein Script schreiben, welches schaut we´lches OS drauf ist und je nach Art den richtigen Kompiler sucht und kompiliert :D
Ist zwar ziehmlich aufwändig, aber naja :D

MfG,
Buchi
 
Aha.. und in welcher Sprache willst du das Script schreiben? Perl? Dann brauchst dus auch nicht zu kompilieren -.-.
 
@Wolfgang: es geht wohl eher um Portabilität.. ich wäre froh, wenn ich das Zeugs stabil kompilieren könnte. Auf Windows ist Perl nicht per se dabei und wenn du Perl Programmierer bist, bist du doch auch froh wenn du den Leuten ein Binary schieben könntest ohne ein HOWTO wie sie jetzt Perl & die ganzen Module noch installieren.

Naja, ich ging und gehe davon aus, dass wir hier von Linux/Unix reden.
Schließlich sind wir ja im Unixboard.
Perl ist nunmal eine Interpretersprache.
Immerhin hat selbst jedes vorkompilierte Programm seine Systemanforderungen.
Und die sind bei Perl nunmal installiertes Perl oder (für MS-OS) Active Perl.
Wenn ich Binarys erzeugen will, greife ich zu anderen Programmiersprachen. Um diverse Libs kommst du auch da meist nicht drumherum.

Abgesehen davon programmiere ich nicht für Windows. ;)
Das könnte ich nichtmal testen.

Aber hier ging es ja um Perl und Linux!

Gruß Wolfgang
 

Ähnliche Themen

reiser4 auf gentoo Anleitung

Xubuntu - AVR32-linux crosscompile sqlite

Problem mit Apache2 + MySQL Server

Samba oder NFS ??

OpenSuse 10.2 startet nicht von Festplatte

Zurück
Oben