ubuntuusers.de

Active State Perl/PerlPackagemanager

Status: Gelöst | Ubuntu-Version: Nicht spezifiziert
Antworten |

michi1980

Anmeldungsdatum:
21. März 2008

Beiträge: 33

Ich habe auf meinem Rechner ActiveStatePerl installiert.

Nun bin ich von Windows gewohnt,das dabei ein PerlPackageManager(PPM) mitinstalliert wird.
Ist aber nicht passiert!
Lief da bei der Installation was schief oder ist der bei Linux nicht dabei?
Gibst die möglichkeit den nachzuinstallieren und weiss jemand den Packetnamen?

audax

Avatar von audax

Anmeldungsdatum:
15. September 2006

Beiträge: 1253

Schmeiß es wieder runter. Die wichtigsten Perl Module aus dem CPAN (1373 an der Zahl) sind direkt als Pakete verfügbar, der Rest lässt sich gut über das Tool cpan installieren.

michi1980

(Themenstarter)

Anmeldungsdatum:
21. März 2008

Beiträge: 33

Ich hatte es eigentlich eh schon geplant, aber die version 5.8 ist die neueste unter Unbuntu?
Ich finde nicht viele Module unter der Paketverwaltung,hast du eine gute Quelle?
Wo gibst das Tool-CPAN ?in der Paketverwalltung habe ichs ned gefunden.
Wie löst man das Problem,das script ausführbar zu machen(EXE) ohne ActiveState

audax

Avatar von audax

Anmeldungsdatum:
15. September 2006

Beiträge: 1253

Was willst du mit einer exe?
Und was spricht gegen:

This is perl, v5.8.8 built for i486-linux-gnu-thread-multi

Copyright 1987-2006, Larry Wall

Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.

Complete documentation for Perl, including FAQ lists, should be found on
this system using "man perl" or "perldoc perl".  If you have access to the
Internet, point your browser at http://www.perl.org/, the Perl Home Page.


Und die Module aus dem CPAN findest einfach über die Paketsuche.
z.B. so:

dax@grimbold ~ :) % aptitude search 'http proxy perl'
p   libhttp-proxy-perl                                                           - A pure Perl HTTP proxy                                                                 

Und cpan..gibts schon. Gib doch einfach mal spaßeshalber cpan in einem Terminal ein.

michi1980

(Themenstarter)

Anmeldungsdatum:
21. März 2008

Beiträge: 33

ok, im terminal krieg ich unter cpan was, habs unter cpan im paketmanager versucht und nix gefunden.

ich habe durchaus perl-module gefunden,nur ned die benötigten.

wenn ich scripte schreibe, die man auf rechner ausführen lässt,auf welchem kein perl installiert ist,ist eine konvertierung von vorteil.

audax

Avatar von audax

Anmeldungsdatum:
15. September 2006

Beiträge: 1253

Ich hab Windows Perl-Pakete immer unter Windows geschnürt...ist problemlos und lässt sich gleich testen.

michi1980

(Themenstarter)

Anmeldungsdatum:
21. März 2008

Beiträge: 33

ok,danke dann voerst mal!

Sid_Burn

Anmeldungsdatum:
23. Oktober 2004

Beiträge: 2159

Perl Packete in Debian sind zu 99% nach folgender Konvention gepackt.

1) Modulname komplett in kleinbuchstaben
2) Doppelpunkte durch - ersetzen.
3) Vor dem namen ein "lib" schreiben
4) Hinten ein "-perl" anhängen.

Aus "Moose" wird also "libmoose-perl".
DBIx::Class ⇒ libdbix-class-perl

Suchen kannst du wie schon gezeigt indem du einfach die Worte "lib" und "perl" + suchwort nimmt.

Ich finde nicht viele Module unter der Paketverwaltung,hast du eine gute Quelle?
Wo gibst das Tool-CPAN ?in der Paketverwalltung habe ichs ned gefunden.

Das CPAN Tool gehört zur Core Distribution zu Perl.
Wie du hier siehst findest du alle CPAN Module aufgelistet ⇒ http://perldoc.perl.org/index-modules-C.html

Auf Linux Distributionen befinden sich dann immer gleich noch ein "cpan" Befehl. Ist dieser nicht vorhanden macht ein "perl -MCPAN -eshell" allerdiengs das selbe.

Wenn du Module installieren möchtest die sich nicht im Packetmanagment befinden dann solltest du ein "cpan <modul>" mit Root Rechten ausführen.

z.B: "cpan Perl6::Parameters"

Wie löst man das Problem,das script ausführbar zu machen(EXE) ohne ActiveState

Also erstens kannst du mit einer "exe" Datei unter Linux nichts anfangen da unter Linux ein ganz anderes Ausführungsformat existiert.
Zweitens warum sollte man soetwas wollen? Für dich ist es besser wenn du nur das weiter gibst was du selber Programmiert hast und dann sagst es müssen folgende Packete installiert werden. Diese kann dann jeder selber nachinstallieren. Das hat dann auch den Vorteil das Sicherheitsupdates oder generelle Bugfixes der Module die du nutzt weiterhin gefixt werden können.

Ansonsten wenn du fertige Packete erstellen möchtest lohnt es sich ein Blick auf PAR ⇒ http://search.cpan.org/perldoc?PAR zu werfen. Das kann ELF, EXE Binaries erstellen. Genauso wie es fertige Archive erstellen kann wie es sie unter Java "jar" (daher auch der Name "PAR") gibt. Archive wo du nur Perl + PAR Modul benötigst. Allerdiengs sehe ich unter einem GNU/Linux system wenig Sinn für soetwas. Und ein ActiveState unter GNU/Linux sehe ich auch wenig Sinn drin.

michi1980

(Themenstarter)

Anmeldungsdatum:
21. März 2008

Beiträge: 33

beschäftige mich noch nicht allzu alnge mit linux.
Ich meinte ganz einfach ausführbare scripts,auf linux bin halt dan...

der vorteil von active-state ist der paketmanager und die unzähligen pakete mehr als bei cpan,die auch gut beschrieben sind.
Im adeptmanager fählt die ja dürftig aus...

ich habe aber active state bereits zum laufen bekommen und komodo auch, nur den paketmanager halt nicht...

Pakete dich über den adeptmander(perl) installiert habe muss ich aber auch weiterhin make zusammenbauen?

Lunar

Anmeldungsdatum:
17. März 2006

Beiträge: 5792

michi1980 hat geschrieben:

der vorteil von active-state ist der paketmanager und die unzähligen pakete mehr als bei cpan,die auch gut beschrieben sind.

Nicht, dass ich mich mit Perl auskennen würde, aber das irgendetwas mehr Pakete enthält als das CPAN, ist ziemlich unwahrscheinlich. Außerdem dürfte der Paketmanager von ActiveState letztlich auch nur ein Frontend für cpan sein.

michi1980 hat geschrieben:

Im adeptmanager fählt die ja dürftig aus...

Nichts hindert dich daran, cpan direkt zu nutzen.

Sid_Burn

Anmeldungsdatum:
23. Oktober 2004

Beiträge: 2159

der vorteil von active-state ist der paketmanager und die unzähligen pakete mehr als bei cpan,die auch gut beschrieben sind.
Im adeptmanager fählt die ja dürftig aus...

Warum sollte der Packetmanager ein Vorteil sein wenn du bereits unzählige Packete bereits im Betriebssystem zur Verfügung stehen? Und es ist so gut wie alles wichtige dabei. Und mehr Packate als CPAN hat der active-state packetmanager auch nicht. Eher weniger. Da ActiveState auch nicht alle Packete anbietet die im CPAN herumliegen.

Beschreiben tun sie auch nicht mehr. Die Beschreibung der Packete kannst du ganz normal über CPAN abrufen. Und weiterhin geht unter einem Linux Basierten OS auch "perldoc Moose" oder "man Moose" (sofern Moose installiert ist). Der perldoc Befehl + Core Modul Dokumentation musst du aber bei einem Debian basierten OS Manuel nachinstallieren. Packet "perl-doc".

Dürftig ist es nicht wirklich auf Debian Etch gibt mir ein:

sidburn@sid ~ $ aptitude search '^lib.*-perl' | wc -l
1163


aus das bereits 1163 Perl Module vom OS bereits gestellt werden. Es könnten aber ein paar mehr Module sein da es leider sehr wenige ausnahmen gibt die von der Debian Konvention abweichen. (Beispielsweise Image::Magick ⇒ perlmagick )

Wenn du wenige Module siehst könnte es speziell bei Ubuntu sein das du die "universe" und "multiverse" Bereiche nicht freigeschaltet hast.

Ansonsten ist es aber trotzdem nicht ratsam dir nochmals Perl zu installieren wenn es schon installiert ist. Dir gehen einige Vorteile wie Updates des OS verloren. Auserdem kannst du bei der Verteilung auch sagen das ein Nutzer eines Debian System nur ein paar Packete installieren braucht und das war es. Wenn du es über ActiveState verteilst musst du entweder jedem Erzählen wie ActiveState funktioniert, oder ein Bundle anbieten. Aber das Bundle hat auch nicht wirklich Vorteile.

Wenn ein Packet nicht in der Packetverwaltung vorhanden ist, kannst du "cpan Moose" beispielsweise eingeben um Moose zu installieren (Mit entsprechenden root rechten). Damit du auch Packete installieren kannst die C Code enthalten empfiehlt es sich das Packet "build-essential" zu installieren. Beim ersten aufruf von "cpan" kommt eine kleine geleitet Konfiguration. Die ist aber eigentlich selbsterklärend. Bis auf der Mirrorauswahl kannst du auch fast überall einfach Enter drücken. (Du solltest aber build-essential vor den ersten aufruf von cpan installieren.)

Antworten |