Remover Modulo Perl

1. Remover Modulo Perl

Leandro Cardoso Vilalva
leandrovilalva

(usa CentOS)

Enviado em 26/07/2017 - 09:28h

Bom dia.
Estou com um problema em relação a remoção de modulos Perl no Linux Centos.

Tenho um modulo instalado (List::Util) que preciso para rodar um script em Perl.

Quando rodo o script ele diz

List::Util version 1.33 required--this is only version 1.27:

Ou seja precisa atualizar esse modulo, e é aí que está o problema.

Quando executo o comando cpan -O ele me mostra que localmente está instalado a versão 1.27 e no cpan está a verão 1.48:

List::Util 1.2700 1.4800

Como faço para remover ou atulizar essa versão instalada localmente??

Obrigado


  


2. Re: Remover Modulo Perl

Daniel Vinciguerra
dvinciguerra

(usa Debian)

Enviado em 26/07/2017 - 10:13h

Olá,

Eu desaconselho sempre atualizar distribuições do SO por que se algum programa do SO utilizar este modulo e ele não for retro compatível você poderá ter um problema ainda maior.

Pra resolver isso existe varias formas mas as mais simples são: utilizar o local::lib para instalar módulos para o seu usuário local ou usar o perlbrew onde você pode instalar uma (ou mais) versões completas do perl na sua maquina e selecionar em qual versão do perl você quer rodar sua aplicação.

Referencias:
local::lib - https://metacpan.org/pod/local::lib
perlbrew - https://perlbrew.pl

Tendo avisado isso tudo.....

Você pode atualizar a versão do seu módulo usando o próprio cpan:
$ cpan List::Util

Espero que seja útil.
Grande abraço,


3. Re: Remover Modulo Perl

Leandro Cardoso Vilalva
leandrovilalva

(usa CentOS)

Enviado em 26/07/2017 - 10:24h

dvinciguerra escreveu:

Olá,

Eu desaconselho sempre atualizar distribuições do SO por que se algum programa do SO utilizar este modulo e ele não for retro compatível você poderá ter um problema ainda maior.

Pra resolver isso existe varias formas mas as mais simples são: utilizar o local::lib para instalar módulos para o seu usuário local ou usar o perlbrew onde você pode instalar uma (ou mais) versões completas do perl na sua maquina e selecionar em qual versão do perl você quer rodar sua aplicação.

Referencias:
local::lib - https://metacpan.org/pod/local::lib
perlbrew - https://perlbrew.pl

Tendo avisado isso tudo.....

Você pode atualizar a versão do seu módulo usando o próprio cpan:
$ cpan List::Util

Espero que seja útil.
Grande abraço,



Bom dia.
Obrigado pela resposta.
Pelo CPAN ele atualiza e não apresenta nenhum erro. Já está com a versão 1.48 (Pelo CPAN).
Mas quando aplico comando CPAN -O ele apresenta que localmente está instalado a versão 1.27 e por isso não roda o script.
Quero que as 2 coisas (local e cpan) estejam na versão 1.48.

Alguma ideia??

Abaços



4. Re: Remover Modulo Perl

Daniel Vinciguerra
dvinciguerra

(usa Debian)

Enviado em 26/07/2017 - 10:49h

Você sabe se tem mais de um perl instalado?

Tente executar este comando e ver o retorno:
$ perl -mList::Util -E 'say List::Util->VERSION'

Grande abraço,


5. Re: Remover Modulo Perl

Leandro Cardoso Vilalva
leandrovilalva

(usa CentOS)

Enviado em 26/07/2017 - 11:02h

dvinciguerra escreveu:

Você sabe se tem mais de um perl instalado?

Tente executar este comando e ver o retorno:
$ perl -mList::Util -E 'say List::Util->VERSION'

Grande abraço,


Retorna
1.27




6. Re: Remover Modulo Perl

Daniel Vinciguerra
dvinciguerra

(usa Debian)

Enviado em 26/07/2017 - 11:17h

Desculpe.... acho que entendi errado!

A versão que esta na sua maquina é a 1.27 e a versão atual do módulo (publicada no CPAN) é a 1.48! É isso que o comando 'cpan -O' esta dizendo.

Para atualizar a sua versão local digite o comando que eu te enviei primeiramente:
$ cpan List::Util

Isso deve atualizar sua versão local com a versão que esta no CPAN (online)

Abs,


7. Re: Remover Modulo Perl

Leandro Cardoso Vilalva
leandrovilalva

(usa CentOS)

Enviado em 26/07/2017 - 11:32h

dvinciguerra escreveu:

Desculpe.... acho que entendi errado!

A versão que esta na sua maquina é a 1.27 e a versão atual do módulo (publicada no CPAN) é a 1.48! É isso que o comando 'cpan -O' esta dizendo.

Para atualizar a sua versão local digite o comando que eu te enviei primeiramente:
$ cpan List::Util

Isso deve atualizar sua versão local com a versão que esta no CPAN (online)

Abs,


Então.
Nesse comando, pelo CPAN, ele aparente atualiza normalmente.
Porém quando executo o comando cpan -O ele continua aparecendo que local tem a versão 1.27 e pelo CPAN a versão 1.48.
E no script quando tento executar ele aparece que precisa atualizar o modulo List::Util:
List::Util version 1.33 required--this is only version 1.27 at /usr/local/lib64/perl5/Class/MOP/Class.pm line 18.

Ou seja, por algum motivo ele ta entendendo que ta instalado essa versão 1.27 e não a 1.48 do CPAN.