Por que meu programa não executa um arquivo perl?

1

Eu tenho um nome de arquivo perl make_html.pl que funciona em um módulo chamado API :: PDF2 (link ) Eu fiz o download e instalei o caminho errado. my @INC tem os valores

Built under linux
  Compiled at Feb  4 2014 22:52:09
  %ENV:
    PERL5LIB="/home/lib-11//Downloads/mirdeep2/lib/PDF:/home/lib-11//Downloads/mirdeep2/lib/PDF"
  @INC:
    /home/lib-11//Downloads/mirdeep2/lib/PDF
    /home/lib-11//Downloads/mirdeep2/lib/PDF
    /etc/perl
    /usr/local/lib/perl/5.14.2
    /usr/local/share/perl/5.14.2
    /usr/lib/perl5
    /usr/share/perl5
    /usr/lib/perl/5.14
    /usr/share/perl/5.14
    /usr/local/lib/site_perl
.

Quando executo o make_html.pl, o erro que recebo é

Can't locate PDF/API2.pm in @INC (@INC contains: /home/lib-11//Downloads/mirdeep2/lib/PDF /home/lib-11//Downloads/mirdeep2/lib/PDF /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl .) at /home/lib-11/Downloads/mirdeep2/make_html.pl line 9.
BEGIN failed--compilation aborted at /home/lib-11/Downloads/mirdeep2/make_html.pl line 9

Como faço para remover todos os caminhos repetidos? Eu sei onde eu instalei o módulo, mas não tenho certeza sobre qual parte do módulo eu preciso estender o caminho. Existem 3 a 4 pastas dentro da pasta do módulo principal. Eu sou apenas um iniciante no Linux, então use termos simples, por favor. Eu uso o Ubuntu 12.04LTS.

EDITAR

Acabei de notar um erro no caminho em que inseri duas barras entre o lib-11 e o Downloads no caminho. Mas como eu corrijo o erro agora?

    
por The Last Word 09.07.2014 / 12:52

1 resposta

2

Como o módulo é chamado PDF :: API2, PDF será um diretório pesquisado por Perl sob um dos diretórios contidos em @INC.

Em outras palavras, e considerando as informações fornecidas, se você tiver /home/lib-11/Downloads/mirdeep2/lib/PDF em seu @INC, ele pesquisará o diretório PDF (e possivelmente um arquivo de módulo PDF.pm) abaixo desse diretório.

Você precisa remover a parte PDF do seu caminho e encontrar sua biblioteca:

/home/lib-11/Downloads/mirdeep2/lib/
    
por Benoit 09.07.2014 / 13:39