/ / Não consigo localizar LWP / Simple.pm em @INC [duplicate] - perl

Não é possível localizar LWP / Simple.pm em @INC [duplicate] - perl

Duplicar Possível:
Qual é a maneira mais fácil de instalar um módulo Perl ausente?

Eu estou tentando correr um script Perl para converter SCXML para Graphviz DOT. Eu modifiquei a primeira linha do script para:

#!/usr/bin/env perl

e chmod +x o arquivo. Quando eu corro via ./scmxl2dot.pl Eu vejo a seguinte saída de erro:

Não é possível localizar o LWP / Simple.pm in @INC (@INC contém: /opt/local/lib/perl5/site_perl/5.12.3/darwin-multi-2level /opt/local/lib/perl5/site_perl/5.12.3 / opt / local / lib / perl5 / vendor_perl / 5.12.3 / darwin-multi-2level /opt/local/lib/perl5/vendor_perl/5.12.3 /opt/local/lib/perl5/5.12.3/darwin-multi-2level / opt / local / lib / perl5 / 5.12.3 / opt / local / lib / perl5 / site_perl / opt / local / lib / perl5 / vendor_perl.) em ./scmxml2dot.pl linha 14.
BEGIN falhou - compilação abortada na ./scmxml2dot.pl linha 14.

A linha 14 do arquivo é use LWP::Simple;

Como é que eu:

  1. Descobrir se eu tenho essa coisa (módulo?) Instalada e / ou
  2. Obter LWP :: Simple e disponibilizá-lo para o script?

Isso está sendo executado no OS X 10.7.3 e no Perl 5.12.3 (conforme visto no erro).

Respostas:

31 para resposta № 1
  1. Você já está determinado a não tê-lo (em algum lugar ele pode ser encontrado).

  2. perl -MCPAN -e"install "LWP::Simple""


6 para resposta № 2
  1. Execute o seguinte na linha de comando:

    perl -MLWP::Simple -e 1
    

    Se você não obtiver nenhuma saída do comando acima, o módulo será instalado; se ocorrer um erro, ele não será instalado

  2. para instalar o uso

    perl -MCPAN -e"install "LWP::Simple""
    

Quando perl encontros usam meu ::Módulo vai sobre os elementos do módulo @INC embutido que contém nomes de diretórios. Em cada diretório verifica se existe um subdiretório chamado "My" e se nesse subdiretório existe um arquivo chamado "Module.pm".

verifique onde o módulo LWP :: Simple está instalado em seu sistema e digite abaixo da linha logo acima da instrução LWP :: Simple do seu código.

    use lib "/usr/local/module";
use LWP::Simple;

2 para resposta № 3

Dê uma olhada no Perldoc página da web. Isto irá dizer-lhe quais módulos são módulos Perl padrão e quais não são.

Você também pode usar o perldoc comando para descobrir se um módulo Perl está instalado e, se for, sua documentação.

$ perldoc LWP::Simple

(Se o Perldoc não executar como um comando ls -l /usr/bin/perl*. Nos Macs, alguns dos comandos Perl não possuem o bit de execução ativado. Para ativá-lo, faça sudo chmod a+x /usr/bin/perl).

Acontece apenas o LWP::Simple não é um módulo Perl padrão, e se você não tem, você terá que instalá-lo. A maioria das pessoas já lhe contou sobre cpan. Infelizmente, por padrão, o Mac não possui as ferramentas de desenvolvimento de linha de comando necessárias instaladas. Você terá que instalá-los.

Uma vez que eles "re instalados, você pode usar o cpan comando para instalar o LWP :: Simple:

$ sudo cpan   #Run cpan and configure it. It takes about 3 minutes
cpan> install LWP::Simple
cpan> exit