Не установлен или не устанавливаемый?

#perl #cpan

#perl #cpan

Вопрос:

У меня проблема с установкой модулей CPAN на мой компьютер. Я хотел установить модуль из CPAN, и проблема в том… Если я выполню эту команду: perl -MCPAN -e 'install XML::DT' Ответ таков : XML::DT is up to date (0.63). Но когда я пытаюсь запустить свою программу с модулем XML::DT, он сообщает мне, что у меня не установлен ! Итак… Какие варианты у меня есть для решения этой проблемы?

Ошибка, данная мне, является :

 Can't locate XML/DT.pm in @INC (@INC contains: 
/Library/Perl/5.16/darwin-thread-multi-2level /Library/Perl/5.16 
/Network/Library/Perl/5.16/darwin-thread-multi-2level 
/Network/Library/Perl/5.16 /Library/Perl/Updates/5.16.2 
/System/Library/Perl/5.16/darwin-thread-multi-2level 
/System/Library/Perl/5.16 /System/Library/Perl/Extras/5.16/darwin-thread-multi-2level 
/System/Library/Perl/Extras/5.16 .) at ./EX.pl line 2.
BEGIN failed--compilation aborted at ./EX.pl line 2.
  

Комментарии:

1. Не могу удержаться: «Установлен или не установлен, вот в чем вопрос»… Гамлет Шекспира. 😉 🙂

2. Как вы запускаете скрипт? Запускается ли он, например, из Padre или какой-либо другой IDE? Или вы запускаете его из командной строки? И знаете ли вы, куда был установлен модуль? (Потому что он, вероятно, не был установлен ни по одному из путей, перечисленных в @INC)

3. Чтобы увидеть, где установлен модуль, выполните perl -MXML::DT -e 'print $INC{"XML/DT.pm"}, "n"' . Я предполагаю, что у вас более одной установки perl.

4. Ну, я сделал это, используя команду use lib ... , но я думаю, что она не должна этого делать… :/

5. ваш @INC выглядит так, как будто у вас есть 2 5.16 каталога, один просто 5.16 и один с пробелом в конце. Итак, весьма вероятно, что у вас есть 2 установки (не для интересующего вас пакета, но в целом) Если вы очистите ‘5.16’, это может помочь