martes, 25 de diciembre de 2012

Como compilar/empaquetar script's perl para Linux

Como saben o se abran dado cuenta por los tutoriales del sitio, yo le se algo algo a la programación perl,mi lenguaje de programación interpretado favorito,al poder crear script's rápidamente y al tener CPAN que,uff es un excelente lenguaje de programación aunque hoy en dia se esta usando mas PHP,Python o Ruby :(.

Aun así yo lo uso y me sirve para todo,desde programación web(que no acostumbro a usar),hasta aplicaciones de android,Linux/FreeBSD/WIndows,etc :D

Bueno el hecho es que los scripts .pl se pueden compilar,esto también podríamos llamarlo empaquetar,ya que agrega nuestros módulos que necesita el script y los empaqueta en un simple ejecutable,ejecutable para Unix y .exe para Windows.

Yo los ejemplos que he hecho no los he compilado,esto por dos razones:

1.Las distribuciones de Linux que uso son Rolling, y tienen lo mas nuevo,el problema es que si un modulo es mas reciente,por ejemplo Glib,otra distribución que no tenga la misma versión o superior no correrá el ejecutable, así que por ejemplo algún script que haga en Archlinux solo les funcionara en Archlinux o en un tiempo en otras distribuciones,cuando tengan las mismas versiones que mi sistema(me refiero a no menores que la mía  o sea igual o superior pero no menor.

2.Los ejemplos que hago son para demostración,como van a usar el código como ejemplo si esta compilado,ademas de que los hago con licencia GPL.

Así que veamos como hacer esto:


Tutorial

1.Instala PAR

su


cpan


install PAR
2.Instala pp(Perl Packager)


En mismo cpan

install pp

Listo ahora solo usamos esta sintaxis:

pp -o nombre_compilado script.pl
Por ejemplo:

pp -o simplePerlbrowser simplePerlBrowser.4.0.pl

Vídeo de ejemplo

Aquí muestro como ejecuto simplePerlBrowser en un sistema que no tiene instalados los módulos.



También pueden checar las dependencias de

 pp -x nombre_compilado

O crear un exe para Windows

pp -o nombre.exe script.pl

Muchas mas información en:

http://search.cpan.org/~rschupp/PAR-Packer-1.014/lib/pp.pm

En el vídeo no le hice cat al ejecutable,pero compilar también es ofuscar y esto seria lo que mostraría cat

Eso es todo :D

No hay comentarios.:

Publicar un comentario

Los comentarios serán revisados antes de ser publicados.