Forum Webscript.Ru
Программирование => Perl => Тема начата: Mers от 05 Апреля 2004, 21:53:12
-
я устанавливаю модули perl для Денвера
надо в командной строке писать: ppm install...
ничего не катит! пишет: ppm - неизвестная команда и т.п.
и что же делать???!!! где взять эту какую-то ppm?
-
Вопрос к разработчику денвера...
-
я от денвера отказалась 2 года назад, поняв, что там не работает простейший perldoc
ставьте нормальный пакет от activestate
-
Mers ты читал http://faq.webscript.ru/PFPerlActive?v=nqp
-
А кто мешает поставить полный Перл в то же место, где он стоял в Денвере?
To Mers:
Чтобы любая команда исполнилась, операционная система должна знать, где искать эту команду. Поэтому либо нужно указать путь к ней, либо добавить каталог с Перлом в PATH. Денвер сам ничего в систему не пишет (кроме файла hosts), и в этом его удобство - можно ставить на любую машину и быть уверенным, что все заработает и при этом никакие старыеп настройки менять не придется.
-
TO КшЫуфксрук :
т.е. вместо perl\'a денвера поставить другой perl (к примеру activeperl) ? так? и там вроде как есть ppm.
хорошо, а в какой каталог этого денвера нужно залепить другой Perl? В usr/bin/perl да? а точно денвер будет работать с другим Perl\'ом?
-
В Денвере и так стоит activeperl, только немного устаревшая версия (хотя более новая реально нужна только для работы с Unicode) и "немного" обрезанная. В базовом комплекте идет только голый Перл, смысла в котором немного. Нужно еще отдельно скачать на сайте Денвера библиотеки и, по желанию, документацию. Перл в структуре Денвера лежит в /usr/bin, /usr/lib и /usr/site. PPM там, кстати, уже есть. Только путь к нему нужно указывать при вызове. Если же хочется поставить там Перл поновее, то просто поставить его в c:/path_to_denver/usr и все, все должно работать как ранее.
А у меня вообще стоит несколько Перлов от Активстате, в разных директориях. Нужно просто сделать копию основного файла "bin/perl.exe" и обозвать ее как-нибудь по другому, например "bin/perl58.exe" и тогда по желанию можно из командной строки запускать либо Перл 5.6.1, либо Перл 5.8. Это может быть полезно при проблемах с модулями. Например недавно хотел поставить Iagemagick, а с Перл 5.6.1 он работать не захотел, только с Перл 5.8. А GD наоборот, был только для Перл 5.6.1 (потом правда я нашел и для 5.8, хотя на официальном сайте его нет). Можно даже в Денвер поставит второй Перл, например в директорию "/usr/perl58" и потом в скриптах в первой строке указывать "#!/usr/perl58/bin/perl" и тогда для этого скрипта Апач будет вызывать новый Перл.
-
А я пару раз, когда надо было добавить модуль, делал так :
Как автоматизировать процесс установки библиотек и модулей?
Скачивание и установка вручную -- достаточно сложное занятие,
требующее постоянного вмешательства с вашей стороны.
Можно простым способом: сделать su (желательно),
запустить perl -MCPAN -e shell.
Если это первый запуск модуля CPAN,
вам зададут серию вопросов на тему URL вашего любимого зеркала CPAN.
После этого все просто: если вы знаете название модуля или библиотеки,
то набираете, скажем, install Net::NNTP.
Тогда этот модуль (для работы с NNTP) сам ищется на CPAN,
сам скачивается, компилируется, устанавливается.
Все, поставили, можно выходить и использовать вновь установленный модуль.
Если название точно не известно,
то набираем там же help и используем различные команды поиска типа i NNTP.
-
Karabas не стоит выделять то что не имеет смысла в данном топике.
Здесь обсуждаются проблемы установки модулей на Денвер.
А это дистрибутив под винду.
Karabas:
Можно простым способом: сделать su (желательно),
и если мы на *никсах то "желательно" нужно заменить на "обязательно".
-
[OFF]
NeoNox:
если мы на *никсах то "желательно" нужно заменить на "обязательно".
А я вот например подобным образом на хостинге устанавливаю... Причём без всяких su:)[/OFF]
-
Ребята, спасибо - разобрался!
Делал, как говорил КшЫуфксрук . Установил полную версию PERL\'a. Там и ppm, и некоторые модули.
-
NeoNox
Mers:
Здесь обсуждаются проблемы установки модулей на Денвер.
Э....извиняюсь......
Только это Linux, а не винда.... :)
А что в Денвере нет такой фичи ?