perl cygwin perl-module

¿Cómo instalo las bibliotecas de Perl en Cygwin?



perl-module (4)

Soy un friki de C / C ++ / java unix por comercio, pero ahora tengo que escribir un programa perl en Windows. Así que tengo cygwin, eclipse con EPIC instalado y se ejecutan programas de prueba simples. No tengo disponible una máquina Unix para poder ejecutar Eclipse.

Debería poder ejecutar Eclipse con EPIC directamente debajo de Windows sin Cygwin. Me gusta Cygwin por muchas cosas, pero no es exactamente una plataforma muy estable. Eclipse se ejecuta como un programa Java, por lo que todo lo que tiene que hacer es asegurarse de que Java esté instalado en su PC. Incluso hay un paquete Eclipse preconstruido.

También puede obtener un Perl decente que se ejecuta directamente bajo Windows. Ya sea ActivePerl o strawberryperl.com . Cualquiera de los dos funcionará, aunque muchos jefes de Unix prefieren Strawberry Perl porque viene con el mismo entorno MIGW que tiene Cygwin y muchos creen que es más compatible con los hermanos Perl de Unix. Sin embargo, ActiveState Perl puede usar Perl Package Manager (PPM) que contiene módulos preconstruidos. Lamentablemente, el módulo que desea no está disponible a través de PPM.

Pero necesito usar Net :: TCP :: Server y no puedo encontrar la manera de instalarlo. No parece ser parte de la instalación de cygwin perl, y no quiero pasar 5 días aprendiendo el mundo de la configuración perl y cpan y perl. Solo quiero escribir mi programa.

Instalar desde CPAN es realmente bastante simple. La primera vez que ejecutas CPAN, debería configurarse más o menos. Luego, para hacer una instalación, ejecute cpan install Net::TCP::Server y así debería ser. Sin embargo, he probado varias máquinas Mac, Unix y Linux, y no puedo hacer que funcione. Entonces, esto no es tanto un problema de Windows como un problema con este módulo. Es bastante antiguo y podría no funcionar bien en las versiones más nuevas de Perl. Es posible que tenga que forzar la instalación sobre las objeciones de la prueba.

Tal vez pueda usar uno de los módulos de E / S ya instalados que vienen con Perl. Eso te ahorrará un montón de problemas porque los módulos necesarios son parte del paquete existente de Perl.

Soy un geek de C / C ++ / Java / Unix, pero ahora tengo que escribir un programa Perl en Windows. Así que tengo Cygwin, Eclipse con EPIC instalado y se ejecutan programas de prueba simples. No tengo disponible una máquina Unix en la que pueda ejecutar Eclipse.

Pero necesito usar Net::TCP::Server y no puedo encontrar la manera de instalarlo. No parece ser parte de la instalación de Cygwin Perl, y no quiero pasar 5 días aprendiendo el mundo de Perl y CPAN y la configuración de Perl. Solo quiero escribir mi programa.

¿Alguna forma simple de instalar un módulo Perl en Cygwin? Estoy pensando que algo como apt-get install sería agradable, pero espero que sea demasiado esperar.

Gracias


A pesar de los "problemas" de Cygwin, los uso regularmente cada vez que tengo que usar Windows. Recomiendo primero instalar una instalación separada de Perl usando perlbrew para que no interfiera con la copia de Perl de Cygwin en caso de que algo malo ocurra ya que Cygwin no aplica la política de usuario root. En shell cygwin, escriba

/curl -L http://install.perlbrew.pl | bash

Esto debería recorrer la instalación de perlbrew y configurarlo en una de las rutas ejecutables. Siguiente tipo

perlbrew init perlbrew install --force stable perlbrew switch stable

Espere un poco mientras compila un Perl de menta. Por alguna razón desconocida, Perl solo puede pasar el 99.23% de las pruebas del módulo principal en Cygwin (al menos en mi máquina), de ahí el indicador --force). Mi experiencia es que principalmente tiene algo que ver con el manejo de archivos de dispositivos, como puertos y tuberías. No estoy al tanto de las personas que intentan resolver el problema, ya que parece ser un problema de Cygwin. Aunque no me ha presentado muchos problemas con el sistema general y las tareas de programación web. Las rutinas de prueba del módulo fallarán si existe algún problema, así que no me preocupo por él.

El siguiente paso es instalar cpanm (cpanminus), escriba

perlbrew install-cpanm

De aquí en adelante, para instalar cualquier biblioteca desde CPAN, solo escriba

cpanm [library::name1] [library::name2]

cpanm hace que sea trivial instalar cualquier módulo Perl. Incluso puede instalar desde su directorio local en lugar de CPAN.


Al ver que parte de la información aquí es un poco anticuada y demasiado complicada, prefiero sugerir lo siguiente. Hay unos pocos administradores de paquetes de Perl diferentes en uso. Todos están instalados con cpan (que ya es parte de la instalación de Cygwin Perl), así:

# Install ppm (outdated) cpan PPM # Install cpanp (still used) cpan CPANPLUS # Install cpanm (most recent) cpan App::cpanminus

Luego puede instalar cualquier paquete de Perl que desee, como por ejemplo en el PO, usando cpanm :

cpanm Net::TCP::Server

A veces (como se indicó anteriormente), Cygwin puede fallar ciertas pruebas. Por ejemplo, cuando usa IPv6 en una máquina configurada únicamente con IPv4, o cuando su firewall de Windows está bloqueando algunas pruebas, etc. Para intentar instalar de todos modos, intente usar la bandera de fuerza ; -f .

cpanm -f Net::TCP::Server


$ perl -MCPAN -e shell cpan shell -- CPAN exploration and modules installation (v1.9402) Enter ''h'' for help. cpan[1]> install Net::TCP::Server

Y es instructivo enumerar la configuración con el comando o conf .