56 votes

Comment puis-je compiler mon script Perl afin qu'il puisse être exécuté sur des systèmes sur lesquels Perl n'est pas installé?

J'ai un fichier .pl et je veux l'exécuter sur n'importe quel système même si perl n'est pas installé. Comment puis-je y arriver?

Quelqu'un peut-il me faire savoir avec quelques bons exemples pour le faire?

44voto

ysth Points 54757

pp pouvez créer un exécutable qui comprend perl et votre script (et toutes les dépendances de modules), mais il sera spécifique à votre architecture, de sorte que vous ne pouvait pas être exécuté sur Windows et linux par exemple.

De son doc:

Pour rendre un fichier exécutable autonome, adapté pour fonctionner sur une machine qui n'a pas installé de perl:

   % 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 des machines différentes).

30voto

Alexandr Ciornii Points 5873
  1. Installez PAR::Packer. Exemple pour *nix:

    sudo cpan -je PAR::Packer

    Pour Strawberry Perl pour Windows ou pour ActivePerl et MSVC installé:

    cpan -je PAR::Packer
  2. Pack avec pp. Il permettra de créer un exécutable nommé "exemple" ou "example.exe" sur Windows.

    pp -o exemple example.pl

Cela ne peut fonctionner que sur les OS où il a été construit.

P. S. Il est vraiment difficile de trouver un clone d'Unix sans Perl. Vouliez-vous dire Windows?

10voto

Sinan Ünür Points 76179

perl est fourni avec une excellente liste de FAQ qui aborde de telles questions parmi beaucoup d'autres. Voir

$ perldoc -q "How can I compile"

9voto

brian d foy Points 71781

De perlfaq3's réponse à Comment puis-je compiler mon programme Perl en byte code ou C?:


(contribution de brian d foy)

En général, vous ne pouvez pas faire cela. Il ya certaines choses qui peuvent travailler pour votre situation de bien. Habituellement, les gens poser cette question parce qu'ils veulent distribuer leurs œuvres sans donner le code source, et la plupart des solutions de commerce d'espace disque pour des raisons de commodité. Vous ne verrez probablement pas beaucoup d'une augmentation de la vitesse, puisque la plupart des solutions de simplement intégrer un interpréteur Perl dans le produit final (mais voir Comment je peux faire mon programme Perl courir plus vite?).

Les Archives de Perl Toolkit ( http://par.perl.org/ ) est du Perl analogique pour Java JAR. Il est librement disponible sur CPAN ( http://search.cpan.org/dist/PAR/ ).

Il y a aussi quelques produits commerciaux qui peuvent travailler pour vous, si vous achetez une licence pour eux.

Le Perl Dev Kit ( http://www.activestate.com/Products/Perl_Dev_Kit/ ) à partir d'ActiveState peut "Tourner vos programmes Perl dans le prêt-à-exécutables pour HP-UX, Linux, Solaris et Windows."

Perl2Exe ( http://www.indigostar.com/perl2exe.htm ) est un programme en ligne de commande pour la conversion de scripts perl pour les fichiers exécutables. Il vise à la fois Windows et unix.

7voto

Jared Oberhaus Points 8877

Regardez PAR (Perl Archiving Toolkit).

PAR est un outil d'empaquetage et de déploiement multiplate-forme, surnommé comme un croisement entre le fichier JAR de Java et Perl2EXE / PerlApp .

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X