Не удается найти файл / Glob.pm в @INC (@INC содержит: D: / tools / lib.) В строке directory.pl 2 - PullRequest
9 голосов
/ 17 января 2011

Я получаю эту ошибку при запуске моего кода Perl

Can't locate File/Glob.pm in @INC (@INC contains: D:/tools/lib .) at directory.pl line 2.

line 2: @files=<*>;

Когда я запускаю команду, я получаю,

Y:\perl\perl>perldoc -l File::Glob

D:\tools\lib\perl\510\File\Glob.pm

Итак, я думаю, что модуль File :: Glob установлен?

1 Ответ

16 голосов
/ 17 января 2011

@INC должен быть правильно установлен при установке Perl.Когда это не соответствует вашей конфигурации, вы, кажется, что-то напутали.

Однако, если текущее значение @INC не соответствует вашим потребностям, у вас есть различные варианты:

  1. Добавить D:\tools\lib\perl\510\ в переменную среды PERL5LIB (илиPERLLIB, если это не работает)
  2. Укажите @INC при запуске: perl -I D:\tools\lib\perl\510\
  3. Вместо записи use libname, вы можете написать use path/to/libname
  4. Использование блока BEGIN перед операторами use:

    BEGIN {
      push @INC,"D:\tools\lib\perl\510\";
    }
    

См. Также http://perldoc.perl.org/perlvar.html для краткого введения.

...