J'ai un .pl
fichier et je veux exécuter ce fichier dans n'importe quel système même si Perl
n'est pas installé. Comment puis-je y parvenir?
Quelqu'un peut-il me le faire savoir avec de bons exemples pour le faire?
pp peut créer un exécutable qui inclut Perl et votre script (et toutes les dépendances de module), mais il sera spécifique à votre architecture, vous ne pouvez donc pas l'exécuter sur Windows et linux par exemple.
De son doc:
Pour créer un exécutable autonome, adapté à une exécution sur une machine sur laquelle Perl n'est pas installé:
% pp -o packed.exe source.pl # makes packed.exe # Now, deploy 'packed.exe' to target machine... $ packed.exe # run it
(% et $ il y a des invites de commande sur différentes machines).
Installer PAR::Packer
. Exemple pour * nix:
Sudo cpan -i PAR :: Packer
Pour Strawberry Perl pour Windows ou pour ActivePerl et MSVC installés:
cpan -i PAR :: Packer
Emballez-le avec pp
. Il créera un exécutable nommé "exemple" ou "exemple.exe" sous Windows.
pp -o exemple example.pl
Cela ne fonctionnerait que sur le système d'exploitation où il a été construit.
P.S. Il est vraiment difficile de trouver un clone Unix sans Perl. Voulez-vous dire Windows?
De la réponse de perlfaq3 à Comment puis-je compiler mon programme Perl en code octet ou C? :
(contribution de brian d foy)
En général, vous ne pouvez pas faire cela. Cependant, il y a certaines choses qui peuvent fonctionner pour votre situation. Les gens posent généralement cette question parce qu'ils veulent distribuer leurs œuvres sans donner le code source, et la plupart des solutions échangent de l'espace disque pour plus de commodité. Vous ne verrez probablement pas non plus une augmentation de vitesse, car la plupart des solutions regroupent simplement un interpréteur Perl dans le produit final (mais voir Comment puis-je accélérer le fonctionnement de mon programme Perl?).
Perl Archive Toolkit ( http://par.Perl.org/ ) est l'analogue de Perl au JAR de Java. Il est disponible gratuitement et sur CPAN ( http://search.cpan.org/dist/PAR/ ).
Il existe également des produits commerciaux qui peuvent fonctionner pour vous, bien que vous deviez acheter une licence pour eux.
Le kit de développement Perl ( http://www.activestate.com/Products/Perl_Dev_Kit/ ) d'ActiveState peut "Transformer vos programmes Perl en prêts à l'emploi exécutables pour HP-UX, Linux, Solaris et Windows. "
Perl2Exe ( http://www.indigostar.com/Perl2exe.htm ) est un programme en ligne de commande pour convertir des scripts Perl en fichiers exécutables. Il cible à la fois les plates-formes Windows et Unix.
Et n'oublions pas PDK d'ActiveState . Il vous permettra de compiler l'interface utilisateur, la ligne de commande, les services Windows et les installateurs.
Je le recommande vivement, il m'a très bien servi au fil des ans, mais c'est environ 300 $ pour une licence.
Note à Sinan et à Brian: perlfaq3 a toujours tort.
Cava Packager est excellent sur l'écosystème Windows.
Les fichiers Perl sont des scripts, pas des programmes exécutables. Par conséquent, pour qu'ils "courent", ils auront besoin d'un interprète.
Ainsi, vous avez deux choix: 1) avoir l'interprète sur la machine sur laquelle vous souhaitez exécuter le script, ou 2) faire exécuter le script sur une machine en réseau (ou Internet) à laquelle vous vous connectez à distance (c'est-à-dire avec un navigateur)
Sur MaxOSX, il peut y avoir perlcc . Tapez man perlcc. Sur mon système (10.6.8), il se trouve dans/usr/bin. YMMV
Voir http://search.cpan.org/~nwclark/Perl-5.8.9/utils/perlcc.PL