#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’, это может помочь