Comment puis-je déployer un script Perl/Python/Ruby sans installer d'interpréteur?

Je veux écrire un logiciel qui est essentiellement un épurateur de données regex. Je vais prendre une liste de contacts en CSV et supprimer tous les caractères non-word et autres du nom de la personne.

Ce projet a Perl écrit partout mais ma base de clients est en grande partie non technique et l'installation de Perl sur Windows ne vaudrait pas la peine pour eux.

Des idées sur la façon dont je peux utiliser un langage de type Perl/Python/Ruby sans tous les maux de tête d'obtenir l'interpréteur sur leur ordinateur?

Pensé à web pour une seconde, mais il ne fonctionnerait pas pour des raisons commerciales.

22
demandé sur brian d foy 2009-01-15 16:21:14

9 réponses

Vous pouvez utiliser Perl Archive Toolkit pour apporter un noyau perl minimal + les modules nécessaires + votre programme Perl avec vous.

Et vous pouvez même le convertir en utilisant par Packer dans un fichier Windows exe qui fonctionnera comme n'importe quel autre programme, du point de vue de l'utilisateur final.

23
répondu Tom Feiner 2010-06-01 09:13:48

Vous pouvez obtenir des exécutables Windows dans les trois langues.

30
répondu Adam Bellaire 2010-06-01 09:14:22

En utilisant PAR, L'Achiver Perl a déjà été mentionné dans d'autres réponses, et est une excellente solution. Il y a un court tutoriel sur construire des exécutables en utilisant PAR qui a été publié en tant que Perl Tip l'année dernière.

Dans la plupart des cas, si vous avez PAR::Packer déjà installé sur votre système, vous pouvez créer un exécutable autonome sans dépendances externes ou des exigences:

pp -o example.exe example.pl

Dans la plupart des cas, PAR fera tout le dur travail de détermination de vos dépendances de module pour vous, mais si cela ne va pas, il existe des options de ligne de commande supplémentaires que vous pouvez utiliser pour vous assurer qu'elles sont incluses. Voir la documentation pp pour plus de détails.

Tout le meilleur,

Paul

8
répondu pjf 2009-01-16 03:58:59

Êtes-vous sûr qu'il y a un mal de tête? ActivePerl et Strawberry Perl sont morts facile à installer sur Windows avec seulement quelques clics de souris. Python est tout aussi facile à installer d'après ce que j'entends.

Avez - vous essayé d'installer l'un de ceux-ci pour voir à quel point c'est facile? Si ceux - ci sont difficiles pour votre client, Je ne vois pas comment leur donner un script à exécuter va être plus facile.

Ou, peut-être que vous pouvez utiliser quelque chose comme une image docker Pour Perl ou la fournir en tant que web service au lieu d'une application.

6
répondu brian d foy 2015-09-08 22:07:07

Vous pouvez convertir le script en un exécutable. En Python et Windows, vous pouvez facilement le faire avec py2exe. Il existe des solutions similaires pour Perl et Ruby, mais je crois que py2exe est à la fois gratuit et fiable.

3
répondu kgiannakakis 2009-01-15 13:29:53

Un public non technique? Vous aurez également besoin d'une sorte d'interface utilisateur de base, probablement du type "graphique". Vous pouvez essayer de wxPython, ce qui peut être emballé dans un exécutable Windows avec py2exe et dans une application Mac avec py2app.

2
répondu Noah 2009-01-15 14:11:45

Ruby a le programme OCRA qui empaquette tout dans un joli soigné .EXE. Le programme RubyScript2EXE n'est plus maintenu, ce serait donc la meilleure solution.

1
répondu John 2010-03-20 17:12:11

"installer Perl sur Windows ne vaudrait pas la peine pour eux" vraiment? C'est complexe?

Python a un simple .MSI qui s'installe proprement sans muss ou chichi.

UN programme d'application simple est juste quelques fichiers. py, donc, je ne vois pas un grand facteur de douleur là-bas.

Vous connaissez mieux vos clients.

Je trouve que ce qui suit n'est pas si mal. et c'est beaucoup plus facile à supporter, puisque vos mises à niveau ne seront qu'une seule .MSI avec simple, facile à vivre avec la source.

1) double-cliquez dessus .Fichier MSI pour installer Python (ou Perl ou autre)

2) double-cliquez sur cet autre .MSI pour installer les bonnes choses

0
répondu S.Lott 2009-01-15 15:32:55