• Publicidad

Problema instalando módulo

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

Problema instalando módulo

Notapor Leo_Gutierrez » 2009-08-20 10:56 @497

Hola a todos.

Estoy tratando de instalar el módulo : WWW::Facebook::API

He tratado así:
Sintáxis: [ Descargar ] [ Ocultar ]
Using bash Syntax Highlighting
  1. cpan WWW::Facebook::API
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4


Y recibo esto al final:
Sintáxis: [ Descargar ] [ Ocultar ]
Using text Syntax Highlighting
BEGIN failed--compilation aborted at t/xml.t line 8.
# Looks like your test died before it could output anything.
t/xml..............dubious                                                  
        Test returned status 255 (wstat 65280, 0xff00)
Failed Test       Stat Wstat Total Fail  Failed  List of Failed
-------------------------------------------------------------------------------
t/00.load.t          1   256    19   37 194.74%  1-19
t/admin.t          255 65280     4    8 200.00%  1-4
t/api.t            255 65280    36   72 200.00%  1-36
t/application.t    255 65280     1    2 200.00%  1
t/auth.t           255 65280    ??   ??       %  ??
t/canvas.t         255 65280    59  118 200.00%  1-59
t/config.t         255 65280     8   16 200.00%  1-8
t/data.t           255 65280    ??   ??       %  ??
t/events.t         255 65280    ??   ??       %  ??
t/fbml.t           255 65280     3    6 200.00%  1-3
t/feed.t           255 65280     5   10 200.00%  1-5
t/fql.t            255 65280    ??   ??       %  ??
t/friends.t        255 65280     4    8 200.00%  1-4
t/groups.t         255 65280    ??   ??       %  ??
t/internal.t       255 65280    19   38 200.00%  1-19
t/marketplace.t    255 65280     6   12 200.00%  1-6
t/md5.t            255 65280     3    5 166.67%  1-3
t/notifications.t  255 65280     1    2 200.00%  1
t/pages.t          255 65280     4    8 200.00%  1-4
t/parse.t          255 65280    11   21 190.91%  1-11
t/photos.t         255 65280     9   18 200.00%  1-9
t/profile.t        255 65280    ??   ??       %  ??
t/sms.t            255 65280     2    4 200.00%  1-2
t/users.t          255 65280     5   10 200.00%  1-5
t/xml.t            255 65280    ??   ??       %  ??
3 tests skipped.
Failed 25/28 test scripts, 10.71% okay. 199/199 subtests failed, 0.00% okay.
make: *** [test_dynamic] Error 255
  /usr/bin/make test -- NOT OK
Running make install
  make test had returned bad status, won't install without force
leo@lein:~/Escritorio/WWW-Facebook-API-0.4.14$
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4

También he tratado así:
Sintáxis: [ Descargar ] [ Ocultar ]
Using bash Syntax Highlighting
perl Makefile.PL --without-guessing
make
make test
sudo make install
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4

El último comando me da la salida:
Sintáxis: [ Descargar ] [ Ocultar ]
Using bash Syntax Highlighting
  1. leo@lein:~/Escritorio/WWW-Facebook-API-0.4.14$ sudo make install
  2. Writing /usr/local/lib/perl/5.8.8/auto/WWW/Facebook/API/.packlist
  3. Appending installation info to /usr/local/lib/perl/5.8.8/perllocal.pod
  4. leo@lein:~/Escritorio/WWW-Facebook-API-0.4.14$
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4

Creo que no se ha instalado bien.

La salida que me da al tratar de usar el módulo en un script:
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. #!/usr/bin/perl
  2. use strict;
  3. use warnings;
  4. use WWW::Facebook::API;
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4

Sintáxis: [ Descargar ] [ Ocultar ]
Using text Syntax Highlighting
Can't locate version.pm in @INC (@INC contains: /home/leo/Escritorio/.metadata/.plugins/org.epic.debug /home/leo/Escritorio/pl /etc/perl /usr/local/lib/perl/5.8.8 /usr/local/share/perl/5.8.8 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.8 /usr/share/perl/5.8 /usr/local/lib/site_perl .) at /usr/local/share/perl/5.8.8/WWW/Facebook/API.pm line 13.
BEGIN failed--compilation aborted at /usr/local/share/perl/5.8.8/WWW/Facebook/API.pm line 13.
Compilation failed in require at /home/leo/Escritorio/pl/pl.pl line 7.
BEGIN failed--compilation aborted at /home/leo/Escritorio/pl/pl.pl line 7.
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4


¿Qué más podría hacer?
Leo_Gutierrez
Perlero nuevo
Perlero nuevo
 
Mensajes: 91
Registrado: 2008-08-20 23:38 @026

Publicidad

Re: Problema instalando módulo

Notapor explorer » 2009-08-20 11:01 @500

El último error indica que no está instalado (o no encuentra) el módulo version.

Prueba a instalarlo, de la misma manera, con el comando cpan.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Problema instalando módulo

Notapor Leo_Gutierrez » 2009-08-20 17:25 @767

Hola, ya he instalado el modulo "version" como me comentaste.

Luego, he hecho:
Sintáxis: [ Descargar ] [ Ocultar ]
Using bash Syntax Highlighting
  1. leo@lein:~/Escritorio/WWW-Facebook-API-0.4.14$ ls
  2. blib  Changes  examples  lib  Makefile  Makefile.PL  MANIFEST  MANIFEST.SKIP  META.yml  pm_to_blib  README  t
  3. leo@lein:~/Escritorio/WWW-Facebook-API-0.4.14$ sudo perl Makefile.PL
  4. WARNING: EXTRA_META is not a known parameter.
  5. WARNING: LICENSE is not a known parameter.
  6. Warning: prerequisite Readonly 0 not found.
  7. 'EXTRA_META' is not a known MakeMaker parameter name.
  8. 'LICENSE' is not a known MakeMaker parameter name.
  9. Writing Makefile for WWW::Facebook::API
  10. leo@lein:~/Escritorio/WWW-Facebook-API-0.4.14$ make
  11. Manifying blib/man3/WWW::Facebook::API::Data.3pm
  12. Manifying blib/man3/WWW::Facebook::API::Auth.3pm
  13. Manifying blib/man3/WWW::Facebook::API::FBML.3pm
  14. Manifying blib/man3/WWW::Facebook::API::Photos.3pm
  15. Manifying blib/man3/WWW::Facebook::API::Groups.3pm
  16. Manifying blib/man3/WWW::Facebook::API::FQL.3pm
  17. Manifying blib/man3/WWW::Facebook::API::Feed.3pm
  18. Manifying blib/man3/WWW::Facebook::API::Admin.3pm
  19. Manifying blib/man3/WWW::Facebook::API::SMS.3pm
  20. Manifying blib/man3/WWW::Facebook::API::Marketplace.3pm
  21. Manifying blib/man3/WWW::Facebook::API::Users.3pm
  22. Manifying blib/man3/WWW::Facebook::API::Pages.3pm
  23. Manifying blib/man3/WWW::Facebook::API::Events.3pm
  24. Manifying blib/man3/WWW::Facebook::API::Friends.3pm
  25. Manifying blib/man3/WWW::Facebook::API::Profile.3pm
  26. Manifying blib/man3/WWW::Facebook::API::Notifications.3pm
  27. Manifying blib/man3/WWW::Facebook::API::Application.3pm
  28. Manifying blib/man3/WWW::Facebook::API::Canvas.3pm
  29. Manifying blib/man3/WWW::Facebook::API.3pm
  30. leo@lein:~/Escritorio/WWW-Facebook-API-0.4.14$ make install
  31. Warning: You do not have permissions to install into /usr/local/lib/perl/5.8.8 at /usr/share/perl/5.8/ExtUtils/Install.pm line 114.
  32. Writing /usr/local/lib/perl/5.8.8/auto/WWW/Facebook/API/.packlist
  33. Can't open file /usr/local/lib/perl/5.8.8/auto/WWW/Facebook/API/.packlist: Permiso denegado at /usr/share/perl/5.8/ExtUtils/Install.pm line 209
  34. make: *** [pure_site_install] Error 13
  35. leo@lein:~/Escritorio/WWW-Facebook-API-0.4.14$ sudo make install
  36. Writing /usr/local/lib/perl/5.8.8/auto/WWW/Facebook/API/.packlist
  37. Appending installation info to /usr/local/lib/perl/5.8.8/perllocal.pod
  38. leo@lein:~/Escritorio/WWW-Facebook-API-0.4.14$
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4


Todo pareciera instalarse bien, luego al tratar de usarlo:
Sintáxis: [ Descargar ] [ Ocultar ]
Using bash Syntax Highlighting
  1. leo@lein:~/Escritorio/pl$ cat pl.pl
  2. #!/usr/bin/perl
  3. use strict;
  4. use warnings;
  5. use WWW::Facebook::API;leo@lein:~/Escritorio/pl$ perl pl.pl
  6. Cannot create namespace auth: Can't locate Readonly.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.8.8 /usr/local/share/perl/5.8.8 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.8 /usr/share/perl/5.8 /usr/local/lib/site_perl .) at /usr/local/share/perl/5.8.8/WWW/Facebook/API/Auth.pm line 15.
  7. BEGIN failed--compilation aborted at /usr/local/share/perl/5.8.8/WWW/Facebook/API/Auth.pm line 15.
  8. Compilation failed in require at (eval <img src="http://perlenespanol.com/foro/images/smilies/icon_cool.gif" alt="8)" title="Cool" /> line 2.
  9. BEGIN failed--compilation aborted at (eval <img src="http://perlenespanol.com/foro/images/smilies/icon_cool.gif" alt="8)" title="Cool" /> line 2.
  10.  
  11. at pl.pl line 4
  12. Compilation failed in require at pl.pl line 4.
  13. BEGIN failed--compilation aborted at pl.pl line 4.
  14. leo@lein:~/Escritorio/pl$
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4


Luego al querer instalarlo con "cpan":
Sintáxis: [ Descargar ] [ Ocultar ]
Using bash Syntax Highlighting
  1. leo@lein:~/Escritorio/pl$ cpan WWW::Facebook::API
  2. CPAN: Storable loaded ok
  3. Going to read /home/leo/cpan/Metadata
  4.   Database was generated on Wed, 19 Aug 2009 19:31:31 GMT
  5. WWW::Facebook::API is up to date.
  6. leo@lein:~/Escritorio/pl$
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4


¿Qué más podría hacer?
Leo_Gutierrez
Perlero nuevo
Perlero nuevo
 
Mensajes: 91
Registrado: 2008-08-20 23:38 @026

Re: Problema instalando módulo

Notapor explorer » 2009-08-20 17:56 @789

Regla primera: usa SIEMPRE el comando cpan. Si lo tienes bien configurado, cpan hará los mismos pasos que tu del perl Makefile.PL... make install. Por eso, SOLO necesitas usar cpan (bueno, de forma más moderna, cpanp, pero eso, ya es otra historia.

Segunda regla: lo recomendable es hacer la instalación como supervisor (root). Ese es justo el error que te aparece al intentar hacer el make install. Nada: haz un su -, y una vez que eres root, usa el comando cpan.

Luego viene el error
Sintáxis: [ Descargar ] [ Ocultar ]
Using text Syntax Highlighting
Can't locate Readonly.pm
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4
que quiere decir que el módulo Readonly no lo encuentra o no está instalado.

Estoy sospechando que tienes configurado cpan para que responda automáticamente que "no" a la pregunta de si tiene que bajarse los módulos de los que depende el módulo que quieres instalar. Repasa la configuración de cpan: ejecuta el comando, y cuando salga la línea de comandos de cpan, ejecuta o conf, y mira el valor de la variable prerequisites_policy. Yo la tengo a follow (seguir con los prerequisitos de forma automática, pero puedes ponerlo a ask para que te pregunte a cada paso.

Lo puedes modificar escribiendo: o conf prerequisites_policy follow, y para que quede grabado al instante, o conf commit. Luego, puedes instalar módulos desde ahí o regresar a la línea de comandos normal.

De esa forma, cuando quieras instalar un módulo, cpan se encargará de bajar el resto de módulos.

De momento, intenta ejecutar el programa, toma nota de los módulos que fallan por no estar, e instálalos. O desde dentro de cpan, ejecutar force install WWW::Facebook::API, para ver si eso lo resuelve (si no funciona install, prueba con upgrade).
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Problema instalando módulo

Notapor Leo_Gutierrez » 2009-08-20 18:02 @793

Creo que ya está, como bien decías, era "Readonly".
Sintáxis: [ Descargar ] [ Ocultar ]
Using bash Syntax Highlighting
  1. leo@lein:~/Escritorio/pl$ cat pl.pl
  2. #!/usr/bin/perl
  3. use strict;
  4. use warnings;
  5. use WWW::Facebook::API;
  6. leo@lein:~/Escritorio/pl$ perl pl.pl
  7. leo@lein:~/Escritorio/pl$
  8.  
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4

Gracias.
Leo_Gutierrez
Perlero nuevo
Perlero nuevo
 
Mensajes: 91
Registrado: 2008-08-20 23:38 @026

Re: Problema instalando módulo

Notapor explorer » 2009-08-20 18:40 @819

La forma más rápida para comprobar si un módulo está instalado, es sin escribir ningún programa:
Sintáxis: [ Descargar ] [ Ocultar ]
Using bash Syntax Highlighting
perl -MWWW::Facebook::API -e 1
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4

Si no sale, nada, es que todo está bien. Si sale algo, serán errores de que no encuentra el módulo.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Problema instalando módulo

Notapor Leo_Gutierrez » 2009-08-22 02:13 @134

Hola, explorer, una última duda, ya no tiene nada que ver con la instalación de un módulo, pero sí con su uso.

Tengo el siguiente código:
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. #!/usr/bin/perl
  2. use strict;
  3. use warnings;
  4. if($#ARGV != 0)
  5. {
  6.         print "$0 \"Busqueda\"\n";
  7.         exit(0);
  8. }
  9. use WWW::Wikipedia;
  10. my $wiki = WWW::Wikipedia->new();
  11. $wiki = WWW::Wikipedia->new( language => 'es' );
  12. my $result = $wiki->search($ARGV[0]);
  13. if($result->text())
  14. {
  15.       print $result->text();
  16.   }
  17. exit(0);
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4


El código me funciona bien para argumentos de una sóla palabra, pero, al tratarse de argumentos de más de una sóla palabra, el código se rompe.

Observa:
Sintáxis: [ Descargar ] [ Ocultar ]
Using bash Syntax Highlighting
  1. leo@lein:~/Escritorio/pl$ perl pl.pl "cubo rubik"
  2. Can't call method "text" on an undefined value at pl.pl line 13.
  3. leo@lein:~/Escritorio/pl$
  4.  
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4


¿Alguna idea?
Leo_Gutierrez
Perlero nuevo
Perlero nuevo
 
Mensajes: 91
Registrado: 2008-08-20 23:38 @026

Re: Problema instalando módulo

Notapor explorer » 2009-08-22 06:02 @293

Según el manual de WWW::Wikipedia, esto es lo que hay que hacer para saber qué pasa.
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. my $result = $wiki->search($ARGV[0]);
  2. if (!$result) {
  3.     print "ERROR: ", $wiki->error(), "\n";
  4. }
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Problema instalando módulo

Notapor Leo_Gutierrez » 2009-08-22 13:16 @595

No he dado con el error, he agregado la porción de código que me diste:

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. #!/usr/bin/perl
  2. use strict;
  3. use warnings;
  4. if($#ARGV != 0)
  5. {
  6.         print "$0 \"Busqueda\"\n";
  7.         exit(0);
  8. }
  9. use WWW::Wikipedia;
  10. my $wiki = WWW::Wikipedia->new();
  11. $wiki = WWW::Wikipedia->new( language => 'es' );
  12. my $result = $wiki->search("$ARGV[0]");
  13. if(!$result)
  14. {
  15.         print "Error: ", $wiki->error(), "\n";
  16.         exit(1);
  17. }
  18. if($result->text())
  19. {
  20.       print $result->text();
  21.   }
  22. exit(0);
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4


¡Oh!, edito, ya he encontrado el error, bueno, no me parece error, pero, es algo extraño.

El código falla sino se le envían las cadenas capitalizadas, es decir, falla si hago algo como:
Sintáxis: [ Descargar ] [ Ocultar ]
Using bash Syntax Highlighting
  1. leo@lein:~/Escritorio/pl$ perl pl.pl "linus torvalds"
  2. Error: uhoh, WWW::Wikipedia unable to contact http://es.wikipedia.org/w/index.php?tit ... action=raw
  3. leo@lein:~/Escritorio/pl$
  4.  
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4

Pero funciona si hago esto:
Sintáxis: [ Descargar ] [ Ocultar ]
Using bash Syntax Highlighting
  1. leo@lein:~/Escritorio/pl$ perl pl.pl "Linus Torvalds"
  2. {{Ficha de persona |nombre= Linus Benedict Torvalds |imagen= Linus Torvalds.jpeg
  3. |descripción = Torvalds en 2002 |fecha de nacimiento= 28 de diciembre de 1969
  4. () |lugar de nacimiento= , Helsinki |fecha de fallecimiento= |lugar de
  5. fallecimiento= |nacionalidad = finlandés |ocupación= Ingeniero de software
  6. |nyuge= Tove Torvalds }} 'Linus Benedict Torvalds' (nacido el 28 de diciembre
  7. de 1969), es un ingeniero de software finlandés; es conocido por desarrollar la
  8. primera versión del núcleo de sistema operativo (kernel) Linux, basándose en
  9. el sistema operativo libre Minix creado por Andrew S. Tanenbaum y en algunas
  10. herramientas, los compiladores y un número de utilidades desarrollados por el
  11. proyecto GNU. Actualmente Torvalds es responsable de la coordinación del
  12. proyecto. Pertenece a la comunidad hablante de sueco de Finlandia (que también
  13. es oficial y hablado por aproximadamente el 6% de la población).
  14. leo@lein:~/Escritorio/pl$
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4


Bueno, buscaré una expresión regular para capitalizar las palabras, gracias por la ayuda brindada.

Actualizado:

Ya he encontrado solución, el código final queda así:
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. #!/usr/bin/perl
  2. use strict;
  3. use warnings;
  4. if($#ARGV != 0)
  5. {
  6.         print "$0 \"Busqueda\"\n";
  7.         exit(0);
  8. }
  9. $ARGV[0] =~ s/(\w+)/\u\L$1/g;
  10. use WWW::Wikipedia;
  11. my $wiki = WWW::Wikipedia->new();
  12. $wiki = WWW::Wikipedia->new(language => 'es');
  13. my $result = $wiki->search("$ARGV[0]");
  14. if(!$result)
  15. {
  16.         print "Error: ", $wiki->error(), "\n";
  17.         exit(1);
  18. }
  19. if($result->text())
  20. {
  21.       print $result->text();
  22.   }
  23. exit(0);
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4
Leo_Gutierrez
Perlero nuevo
Perlero nuevo
 
Mensajes: 91
Registrado: 2008-08-20 23:38 @026

Re: Problema instalando módulo

Notapor netsoul » 2009-08-22 14:33 @648

Disculpa por meterme un poquito, :) , pero ese $ARGV[0] =~ s/..., no me convence mucho de forma "legal" (al menos para mí). Funcionar sí, podría funcionar pero, una buena opción podría ser usarlo con local dentro de un bloque.

No sé si estoy equivocado, pero creo que sí.
With Perl
Imagination is more important than knowledge. Albert Einstein.
netsoul
Perlero nuevo
Perlero nuevo
 
Mensajes: 150
Registrado: 2008-05-04 01:11 @091

Siguiente

Volver a Básico

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 2 invitados

cron