Веб-сайт win32.perl.org предоставляет ссылки на несколько дистрибутивов Perl для MS Windows.
Давно пользуюсь ActivePerl от ActiveState но недавно я перешел на Клубничный перл.
IMHO Единственное преимущество Active Perl перед Strawberry Perl заключается в том, что он поставляется с Perl Tk, что означает его простоту установки. Devel :: ptkdb графический отладчик. Помимо этого, я думаю, что Strawberry Perl обладает всеми преимуществами.





Клубничный перл становится все лучше и лучше. Одна проблема, с которой я неоднократно сталкивался с ActiveState, заключается в том, что мои модули иногда не устанавливаются, потому что мне нужно обновление до основного модуля, но они не позволяют этого. Таким образом, каждый, кто не использует Windows, может использовать мой код, но они не могут этого сделать с Perl ActiveState.
ActiveState также имеет очень хитрую систему сборки, которая часто не может точно сообщить, почему модуль не удалось собрать. Я так устал переписываться по электронной почте и просить эту информацию, что в конце концов сдался. Я хочу, чтобы мой код запускался в Windows, но если ActiveState не предоставляет мне эту информацию и не дает мне возможности обновить основные модули, я просто не могу его использовать. Некоторые из моих модулей НЕ имеют сбоев сборки в любой операционной системе, кроме модулей с ActiveState Perl. Поддержите Strawberry Perl и не беспокойтесь об ActiveState.
Если ActiveState исправил свою систему сборки и свою политику «не обновлять базовые модули», к этому стоит вернуться.
Можно обновить основные модули с AS Perl 5.8.8 build 518 (выпущенного в январе 2007 г.). Они также обновили свою систему сборки CPAN в 2008 году, но я не знаю точно, когда.
Strawberry Perl великолепен. Однако, если вы используете MSys Bash в качестве оболочки, есть известная проблема, что такие команды, как cpan, не работают.
Я в основном использую ActivePerl, но мне очень нравится, в каком направлении движется Strawberry Perl. Мне нравится, что оболочка cpan «просто работает», и мне не нужно прыгать через кучу обручей, чтобы установить модули XS. (например, ExtUtils :: FakeConfig, хотя это менее необходимо в более поздних сборках ActivePerl.) Я также взволнован возможностью Perl на флэш-накопителе. Версия Портативный Perl для разработчиков уже довольно удобна.
Я согласен с тем, что основным преимуществом ActivePerl является Tk из коробки, но учтите, что с версии 5.10 ActivePerl больше не поставляется с Tk по умолчанию. Вместо этого он поставляется с Tkx.
ActiveState Perl долгое время считался де-факто Windows Perl. Хотя у него много недостатков, и многие из нас используют что-то еще, он остается очень популярным. Если бы вы создавали код Perl для выполнения на машине с Windows (кроме вашей), я бы подумал о том, чтобы написать его с прицелом на значение по умолчанию (или по умолчанию, как я мог его получить), поскольку установка Perl запускает его. Что-нибудь еще, и вы создаете барьеры для входа для других, пытающихся использовать ваше приложение позже.
AFAIK, PAR pp отлично работает со Strawberry, что является большим преимуществом с точки зрения распространения ваших собственных приложений, потому что IIUC вам понадобится OEM-лицензия, чтобы иметь возможность распространять скомпилированные приложения pp, если вы используете их библиотеки DLL.
@Sinan, ваше утверждение о лицензировании ActivePerl и PAR неверно. См. Пункт 4 лицензии The license also allows You to redistribute parts of the Package as part of an application generated by wrapping tools such as PAR, PerlApp or Perl2Exe. However, this License does not allow You to (a) redistribute the Package as a whole, (b) use its parts to create a language distribution, or (c) redistribute the PerlScript, Perl for ISAPI or PerlEx components with Your application.activestate.com/activeperl/license
@daotoad Хмммм ... Могу поклясться, что более ранняя версия не позволяла этого, но я даже не уверен, правильно ли я помню. Спасибо за исправление.
Будущее определенно за Strawberry Perl. Что бы вы ни выбрали (и эта проблема не является уникальной для Windows), если вы распространяете конечный результат на другие машины, вам придется быть осторожным в отношении предоставленных вами инструкций по установке / установке.
Не существует единственно лучшего дистрибутива Perl. Ванильный перл (перемещаемый, распространяемый Perl) и более удобный для разработчиков Клубничный перл имеют значительный потенциал.
Однако есть очень веская причина, по которой ActivePerl так популярен. Преимущества в основном заключаются в простоте развертывания для ваших конечных пользователей (для использования их диспетчера пакетов PPM компилятор не требуется). ActiveState PDK (Perl Development Kit) - также очень хороший способ упаковать полный двоичный файл Windows, который не требует установки Perl на машине пользователя.
К сожалению, многие очень хорошие модули CPAN (например, привязки Perl для OpenSSL) недоступны через репозиторий ActiveState.
Как и в большинстве случаев, вы должны делать свой выбор на основе того, какой дистрибутив лучше всего соответствует вашим потребностям.
PerlApp действительно кажется полезным инструментом (я не сравнивал его с Par :: Packer), но PDK, в котором он входит, стоит 300 долларов.
У меня были серьезные проблемы со Strawberry, и я чувствовал, что поддержки нет. Хорошие люди из PerlMonks не смогли мне помочь, и я сдался. Если эта страница оставляет вам некоторую неуверенность, вот вам ответ.
Клубничный перл больше похож на Perl на * nix. Он поставляется с MinGW, который может быть полезен сам по себе. Модули Perl также можно установить с помощью ppm или cpan.
Примечание: если вы устанавливаете mingw вместе с клубничным Perl, имейте в виду, что клубничный Perl может использовать разные версии приложений minsys. У меня были серьезные проблемы с получением клубничного Perl для сборки Win32 :: OLE и других модулей, пока я не удалил mingw со своего пути.
Если вам действительно нужен Perl для Windows, как Perl для * nix, установите SUA / SFU (не устанавливайте Perl, который идет в комплекте) и используйте Perl Debian Interix / pkgsrc-interix.
Я всегда использую Cygwin (xterms с bash намного лучше, чем окна cmd) и Perl, который идет с ним. Я устанавливаю модули Perl с оболочкой CPAN (команда "cpan"); работает нормально.
Код, который я пишу, попадает в компании из списка Fortune 500, так что "корпоративное" ощущение полезно. До сих пор я использовал ActivePerl, и он отлично работал как для внутренних инструментов, так и для распространения среди крупных клиентов.
Я предпочитаю Strawberry Perl. Во-первых, он устанавливает gcc как часть mingwin, так что вы можете установить его прямо из CPAN.
Некоторое время я использовал Perl ActiveState, но у меня было много нестыковок при переходе с одной машины на другую, несмотря на то, что они были (по-видимому) одинаково настроены. Плохой вкус оставила и их упаковка модуля PPM. Это очень упрощает управление пакетами, но вы полагаетесь на них при обновлении PPM после обновлений CPAN. Кроме того, PPM ни в коем случае не является полным содержимым CPAN; В последний раз, когда я использовал ActivePerl, мне было трудно найти все необходимые модули, а те, которые были там, часто были старой версии.
Мне любопытно, что оценило голосование против.
Я использую Active State Perl 5.014, который работает нормально.
Проблема в том, что у него нет последней версии Padre (IDE, среда отладки).
После этого поста я начал переупаковывать Strawberry Perl множеством дополнительных модулей, включая Moose, Dancer и Padre. Читатели могут также принять во внимание это: dwimperl.com