Página 1 de 1

Aprender de errores en la instalación de módulos

NotaPublicado: 2013-09-21 15:06 @671
por ManuelPerl
Hola.

Estoy tratando de instalar el módulo Term::Screen sobre Perl 5.14.2 sobre Windows, pero me da error.

Cuando intento ejecutar el programa me dice:
Can't locate Term/Screen.pm in @INC (@INC contains: D:/Dwimperl/perl/site/lib D:
/Dwimperl/perl/vendor/lib D:/Dwimperl/perl/lib .) at menu.pl line 7.


El term::cap está instalado bien.

Me voy al cpan dependencias y le doy clic a un icono con forma de escarabajo y busco mi versión 5.14.2 y me sale fail.

¿ Eso que quiere decir que no puedo instalar ese modulo en la versión de Perl que tengo ?
¿ No se puede hacer algo ?

Al instalar me sale esto y de ahí no pasa. Se queda con el cursor parpadeante, le doy a una tecla pero no pasa de ahí.
Sintáxis: [ Descargar ] [ Ocultar ]
Using text Syntax Highlighting
cpan> install Term::Screen
Running install for module 'Term::Screen'
Running make for J/JS/JSTOWE/Term-Screen-1.03.tar.gz
Checksum for D:\Dwimperl\cpan\sources\authors\id\J\JS\JSTOWE\Term-Screen-1.03.ta
r.gz ok
Scanning cache D:\Dwimperl\cpan\build for sizes
............................................................................DONE


  CPAN.pm: Building J/JS/JSTOWE/Term-Screen-1.03.tar.gz

Checking if your kit is complete...
Looks good
Writing Makefile for Term::Screen
Writing MYMETA.yml and MYMETA.json
cp Screen.pm blib\lib\Term\Screen.pm
  JSTOWE/Term-Screen-1.03.tar.gz
  D:\Dwimperl\c\bin\dmake.EXE -- OK
Running make test
D:\Dwimperl\perl\bin\perl.exe "-Iblib\lib" "-Iblib\arch" test.pl
"stty" no se reconoce como un comando interno o externo,
programa o archivo por lotes ejecutable.
"stty" no se reconoce como un comando interno o externo,
programa o archivo por lotes ejecutable.
"stty" no se reconoce como un comando interno o externo,
programa o archivo por lotes ejecutable.
Test series for Screen.pm module for perl51. Should be at row 2 col 3 (upper lef
t is 0,0)2. Last position   -- should be 2 50.3. Screen size:  rows and  columns
.4. Testing reverse mode, bold mode, and both together.5. Testing clreol -    Th
e next 2 lines should end at col 20 and 30.0---------10--------20--------30-----
---40--------50--------60--------70-------0---------10--------20--------30------
--40--------50--------60--------70-------0---------10--------20--------30-------
-40--------50--------60--------70-------0---------10--------20--------30--------
40--------50--------60--------70-------0---------10--------20--------30--------4
0--------50--------60--------70-------0---------10--------20--------30--------40
--------50--------60--------70-------0---------10--------20--------30--------40-
-------50--------60--------70-------0---------10--------20--------30--------40--
------50--------60--------70-------0---------10--------20--------30--------40---
-----50--------60--------70-------0---------10--------20--------30--------40----
----50--------60--------70-------0---------10--------20--------30--------40-----
---50--------60--------70-------0---------10--------20--------30--------40------
--50--------60--------70-------0---------10--------20--------30--------40-------
-50--------60--------70-------6. Clreos - Hit a key to clear all right and below
:
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4

Este es el calvario que tengo con Perl. El instalar módulos que todavía no le he cogido el truco. No sé si habrá algún manual a seguir cuando el cpan te da errores de instalación. Para tener una idea de lo que pasa, y de lo que hacer.

Gracias.

Re: Aprender de errores en la instalación de módulos

NotaPublicado: 2013-09-21 16:03 @710
por explorer
En el foro de Formación hay un hilo (el primero) que da casi toda la información necesaria sobre el tema de instalación de módulos. Como estás en Windows, vete directamente a esa sección.

A mi no se me ocurriría instalar nada con el comando cpan, en un Windows, salvo que tuviese instalada la distribución Strawberry o la Cygwin. Para una persona que empieza, lo mejor es la de ActiveState.

El mensaje de error dice que es el módulo Term::Screen el que no está instalado. No dice nada de Term::Cap. Y sí, viendo la gráfica de compatibilidades, lo tienes complicado (principalmente, por seguir usando Windows :) ). Veo en CPAN que hay un Term::Screen::Win32. De esto, hace poco que lo hemos hablado.

En la instalación, te ha fallado porque el make no encuentra en tu sistema el ejecutable stty.

Sobre lo de que no se puede hacer nada... el informe de error dice que el módulo POSIX::ttyname no existe para esa arquitectura. Así que, mientras alguien no implemente ese módulo para los Windows, no podrás usarlo. Incluso, lo más seguro, es que no se pueda hacer, porque la arquitectura de Windows no posea el concepto 'tty' de los Unix.

En cambio, Term::Screen::Win32 parece que es lo que estás buscando, pues ofrece la interfaz de Term::Screen, para Windows, usando por debajo el módulo Win32::Console y Win32::Console::ANSI.

Re: Aprender de errores en la instalación de módulos

NotaPublicado: 2013-09-21 16:12 @716
por ManuelPerl
El IDE que estoy utilizando es Padre, utilicé este por el IDE, y todo me funciona bien. ¿Qué ves mejor, que me pase a ActiveState? ¿O que practique Perl mejor sobre Ubuntu que también lo tengo instalado en una partición?

Revisando lo que has escrito he visto esta respuesta tuya.

«A mi no se me ocurriría instalar nada con el comando cpan, en un Windows.»

Entonces, si no se utiliza cpan en Windows, ¿con qué se instala los módulos en Windows?

Re: Aprender de errores en la instalación de módulos

NotaPublicado: 2013-09-21 16:52 @744
por explorer
Sigue el enlace a ActiveState que te he puesto antes. Ahí viene cómo instalar ActiveState y cómo usar el PPM gráfico que trae con él. Ya verás lo sencillo que es instalar módulos en Windows.

Sobre el tema de usar Windows o Linux, pues viendo el ejemplo de la matriz de compatibilidad, te das cuenta de qué sistema operativo se prefiere usar para desarrollo. Si ves más matrices de compatibilidad de otros módulos, verás la misma situación (a excepción de los módulos Win32::)