Instalando módulos perl

3

Eu estava tentando instalar um módulo perl Future :: Utils na minha máquina Ubuntu, mas não encontrei o comando exato. Eu tentei este comando mas não funcionou:

sudo apt-get install libfuture-utils-perl

Eu tenho este resultado quando eu executo este comando:

Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package libfuture-perl

Você pode me ajudar a resolver esse problema

    
por toto 15.06.2015 / 15:43

2 respostas

4

No meu sistema Debian, executar o comando me deu esse resultado

apt-get install libfuture-utils-perl
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package libfuture-utils-perl

No entanto, descobri que a biblioteca estava disponível como um pacote pesquisando:

apt-cache search libfuture
libfuture-perl - module for operations awaiting completion

Eu consegui instalá-lo:

apt-get install libfuture-perl
    
por 15.06.2015 / 15:53
0

Os nomes dos módulos Perl correspondem a um caminho de arquivo .pm de uma necessidade - não uma regra específica do idioma, mas porque é assim que o perl os encontra. Essa suposição pode ser usada com apt-file search para determinar qual pacote de distribuição, se houver, contém esse arquivo:

apt-file search  "/Future/Utils.pm"

Existem muitos módulos sem pacote, e a maneira mais fácil de obtê-los é diretamente do CPAN, para o qual o utilitário cpan fornece uma interface interativa. Provavelmente já está instalado se o perl estiver. Na primeira vez que você usá-lo, ele pedirá para fazer um pouco de configuração automática. Você provavelmente quer su root primeiro, então você pode instalar no sistema ao invés de um usuário em casa, e assim a configuração do cpan é salva no lugar certo (diretório inicial do root). Então você apenas install Future::Utils do prompt cpan . Instalar um módulo dessa maneira pode exigir ferramentas de compilação se houver código XS envolvido; O cpan lhe informará sobre isso e lhe dirá o que você precisa instalar primeiro. Você também pode precisar de bibliotecas específicas e os pacotes de cabeçalho de desenvolvimento para eles.

Você pode ter várias versões de um módulo instalado, uma de um pacote de distribuição e uma do CPAN, já que elas vão para locais diferentes por padrão. O CPAN é o que será usado, no entanto, já que seu caminho tem precedência na matriz @INC - mas você pode alterar isso ou definir $PERL5LIB (um ambiente de shell, não perl, variável).

    
por 15.06.2015 / 16:46