windows - portable - strawberry perl install module




Devrais-je choisir ActivePerl ou Strawberry Perl pour Windows? (7)

ActivePerl exclut des tonnes de modules de l'édition de la Communauté et les construire sous Windows est une vraie douleur.

En outre, ils vous permettent de télécharger et d'utiliser uniquement les dernières éditions gratuitement. Tout le reste, comme l'accès à la version 5.8.8 ou à une version antérieure des modules est soit Business (1000 $ / an / serveur) ou Enterprise (par devis).

Cette question a déjà une réponse ici:

Je suis totalement nouveau à Perl mais j'aimerais l'essayer. J'ai lu environ deux distributions rivales disponibles pour la plate-forme Windows (je suppose qu'il n'y a que Perl sur d'autres systèmes d'exploitation :).

Wikipedia dit que Strawberry est livré avec des outils de développement supplémentaires pour compiler des modules CPAN si nécessaire. Ça m'a l'air plutôt bien.

Il indique également qu'ActivePerl a beaucoup de modules préemballés qui sont plus faciles à installer avec PPM. Ça a l'air génial aussi!

Il y a un compromis clair entre ces deux. Et je me demande ce que je devrais choisir pour commencer? Si j'en choisis un, est-ce difficile de migrer vers l'autre?

Edit: J'ai donné une distribution aux deux distributions pendant quelques semaines. J'ai vraiment aimé les deux ce qui est une bonne chose! On ne peut pas se tromper avec l'un ou l'autre. J'ai fini par aller avec ActivePerl simplement parce qu'il est livré avec une documentation hors ligne (en HTML) - un excellent sauveur pour ceux qui sont sur la route ou qui ne sont pas toujours connectés. C'était très facile pour moi de commencer avec le langage Perl pendant que j'étais en vacances quand je n'étais pas toujours en ligne.

La fraise est au moins aussi grande sinon plus grande. Donc, je peux tout à fait le recommander aussi. Et je dois dire qu'on devrait juste apprendre Perl - c'est une très belle langue. Essaie!


Amplifier juste un petit peu sur la réponse utile de Vivin Paliath:

AcitveState / PPM pros: S'il y a un PPM pour votre version, ça va marcher, et simplement.

Contre ActiveState / PPM: Il n'y a pas toujours de PPM, ou du moins pas toujours un PPM à jour.

Pros de Strawberry / CPAN: Votre référentiel est CPAN, pas un tas de binaires gérés par des tiers. Vous avez de nouveaux modules au moment où l'auteur les libère, et vous utilisez le système de construction prévu par l'auteur.

Contre les fraises / CPAN: Tout n'est pas garanti pour se construire parfaitement avec les outils Windows.

Strawberry / CPAN atténuant le facteur: Les devs de Strawberry essayent vraiment, vraiment dur de s'assurer que tout se passe bien et que le plus de CPAN possible est disponible, et quand les modules sont identifiés comme des points problématiques (difficile à construire sur Windows, mais soit pour d'autres modules / applications populaires), soit ils travailleront avec l'auteur pour que le module soit corrigé afin que tout le monde puisse l' installer, soit, dans des cas exceptionnels, appliqueront leurs propres correctifs et combineront le module avec Strawberry ou Strawberry Professional.

Ma préférence va à Strawberry. J'apprécie ce que ActiveState essaie de faire, mais je pense que c'est un goulot d'étranglement dans le processus de développement. Ils étaient nécessaires avant que la communauté se réunisse et construise Strawberry pour amener Windows dans le "premier monde" de l'écosystème Perl, mais ils ne sont plus nécessaires.


Dans un monde parfait, je choisirais debian-interix ou pkgsrc-interix perl (pas l'ancien Perl pkgsrc-interix avec Interix / SFU / SUA) car il fournit le système le plus semblable à POSIX / UNIX (y compris la copie réelle à l'écriture) fork, pas l'émulation de fork de Windows de Cygwin). Je l'ai dans le passé (et il est installé sur des machines Windows ici), mais tout le monde ne peut / va installer SFU / SUA juste pour Perl. Dans ces cas, je recommanderais ActivePerl, principalement pour la familiarité de l'interface avec les utilisateurs de Windows (shell graphique PPM versus CPAN) et son intégration avec le kit de développement Perl (PerlExe, PerlNET, PerlSvc et les amis). Aussi, contrairement à ce que d'autres ont répondu, vous pouvez utiliser CPAN (et le shell CPAN) avec ActivePerl (bien que cela implique d'installer les outils de développement nécessaires via PPM d'abord) si vous en avez besoin.


Les deux sont géniaux et fonctionnent de la même manière. Strawberry est connu pour être capable de construire des modules XS, mais vous pouvez le faire avec ActiveState aussi si vous venez d'installer le SDK Visual Studio (ou la version Express Express).

D'ailleurs, si vous avez accès à Visual Studio, le mieux que vous puissiez faire est de construire Perl à partir de la source (c'est plutôt facile si vous lisez le fichier README) et de continuer à construire vos modules avec le même compilateur. C'est en fait une meilleure idée que d'avoir un mélange de compilateur / modules.

Une chose que vous devez prendre en compte si vous utilisez ActiveState: Si vous l'installez sur un serveur en face d'Internet, alors vous devez acheter une licence Business (1000 $ / an / serveur comme indiqué par Ron Warshawsky). Cela ne veut pas dire que ça ne marchera pas, c'est seulement une question d'exigence dans le CLUF. Beaucoup de gens ne le savent pas et l'ont installé sur des serveurs Internet sans acheter la licence correspondante.


Si vous concevez correctement votre application, cela ne devrait pas avoir d'importance.

Un point important pourrait être les versions des différents modules que chacun peut fournir ou ne pas fournir. Les packages PPM peuvent être à la traîne des versions CPAN, mais si vous ne faites pas attention, les versions CPAN à rupture de charge peuvent casser la compatibilité ascendante. En outre, il y aura parfois des paquets PPM pour des choses qui ne seront pas construites correctement sous Strawberry (bien que cela implique que le module est mal conçu le plus souvent).

Soyez simplement conscient des versions de tous les modules que vous utilisez, et cela devrait aller, quel que soit votre choix.


Si vous utilisez le client box.com pour synchroniser des fichiers, alors vous voulez probablement (au moins pour le moment) aller avec Strawberry Perl. L'exécutable ppm est en conflit avec l'une des DLL Box.com. Le GUI ne démarre pas du tout (ce qui génère un message Windows indiquant que l'interpréteur "perl ... a cessé de fonctionner".) J'ai également eu des problèmes intermittents en utilisant la version en ligne de commande de ppm lorsque le client Box.com est installé.


Strawberry est plus Unixy dans son approche, et j'ai toujours été très heureux quand j'ai travaillé avec.

ActiveState, cependant, en raison de son système de gestion de paquet personnalisé, a été une douleur colossale quand j'ai travaillé avec elle. Cela est important lorsque vous êtes dans un environnement d'entreprise.

Pour juste déconner, OMI, Strawberry est meilleur. /subjectif





activeperl