it-swarm-ru.tech

Какую версию Perl я должен использовать в Windows?

Веб-сайт win32.Perl.org содержит ссылки на несколько дистрибутивов Perl для MS Windows.

Долгое время я использовал ActivePerl из ActiveState , но недавно я переключился на Strawberry Perl .

ИМХО Единственное преимущество, которое Active Perl по-прежнему имеет перед Strawberry Perl, заключается в том, что он поставляется с Perl Tk, что означает его простоту установки Devel :: ptkdb графический отладчик. Кроме этого, я думаю, что Strawberry Perl имеет все преимущества.

96
szabgab

Strawberry Perl становится все лучше и лучше. Одна проблема, с которой я неоднократно сталкивался с ActiveState, заключается в том, что мои модули иногда не могут быть установлены, потому что мне нужно обновление до основного модуля, но они этого не позволяют. Таким образом, каждый, кто не не использует Windows, может использовать мой код, но они не могут сделать это с Perl ActiveState.

ActiveState также имеет очень хитрую систему сборки, которая часто не в состоянии точно сообщить, почему модуль не удалось собрать. Я так устал от электронной почты и просьб об этой информации, что в конце концов отказался. Я хочу, чтобы мой код запускался в Windows, но если ActiveState не предоставляет мне эту информацию и не дает мне возможности для обновления основных модулей, я просто не могу ее использовать. У некоторых из моих модулей НЕТ сбоев сборки в любой операционной системе - кроме тех, которые имеют ActiveState Perl. Поддержите Strawberry Perl и просто не беспокойтесь об ActiveState.

Если ActiveState исправил свою систему сборки и свою политику "не обновлять до основных модулей", стоит пересмотреть.

79
Ovid

Нет лучшего дистрибутива Perl. Vanilla Perl (перемещаемый, распространяемый Perl), и он более удобен для разработчиков Strawberry Perl имеют значительный потенциал.

Однако есть очень веская причина, по которой ActivePerl так популярен. Преимущества в основном заключаются в простоте развертывания для ваших конечных пользователей (для использования диспетчера пакетов, PPM, не требуется компилятор). ActiveState PDK (Perl Development Kit) также является отличным способом упаковать полный бинарный файл Windows, который не требует установки Perl на компьютере пользователя.

К сожалению, многие очень хорошие CPAN-модули (такие как привязки Perl для OpenSSL) недоступны через репозиторий ActiveState.

Как и большинство вещей, вы должны сделать свой выбор на основе того, какой дистрибутив лучше всего соответствует вашим потребностям.

30
Darren Meyer

Я в основном использую ActivePerl, но мне действительно нравится, куда движется Strawberry Perl. Мне нравится, что оболочка cpan "просто работает", и мне не нужно прыгать через кучу обручей для установки модулей XS. (например, ExtUtils :: FakeConfig, хотя в последних сборках ActivePerl это менее необходимо). Я также рад возможности Perl на флэш-накопителе. Релиз dev Portable Perl уже довольно удобен.

Я согласен, что основным преимуществом ActivePerl является Tk из коробки, но учтите, что с 5.10 ActivePerl больше не поставляется с Tk по умолчанию. Вместо этого он поставляется с Tkx.

17
Michael Carman

Будущее определенно Strawberry Perl. Какой бы вариант вы ни выбрали (а эта проблема не является уникальной для Windows), если вы распространяете конечный результат на другие машины, вам нужно быть осторожным в отношении инструкций по установке/установке, которые вы предоставляете.

13
Penfold

Strawberry Perl больше похож на Perl на * nix. Он поставляется с MinGW , который может быть полезен сам по себе. Модули Perl также могут быть установлены с ppm или cpan.

6
Rob Kam

Я предпочитаю Strawberry Perl. Например, он устанавливает gcc как часть mingwin, так что вы можете установить его непосредственно из CPAN.

Некоторое время я использовал Perl ActiveState, но у меня было много проблем с одной машины на другую, несмотря на то, что они (казалось бы) были одинаково настроены. Их упаковка с модулем PPM также оставила неприятный привкус. Это упрощает управление пакетами, но вы полагаетесь на них для обновления PPM после обновлений CPAN. Кроме того, PPM никоим образом не является полным содержанием CPAN; В последний раз, когда я использовал ActivePerl, мне было трудно найти все нужные мне модули, а те, что были там, часто были старой версией.

4
gWaldo

ActiveState Perl уже давно считается де-факто Windows Perl. Хотя у него много недостатков, и многие из нас используют что-то еще, оно остается очень популярным. Если бы вы создавали код Perl для выполнения на компьютере с Windows (отличным от вашего), я бы рассмотрел его написание по умолчанию (или по умолчанию, насколько я мог бы его получить) при установке AS Perl. Что-нибудь еще, и вы вводите барьеры для входа для других, пытающихся позже использовать ваше приложение.

3
phreakre

Я всегда использую Cygwin (xterms с bash намного лучше, чем окна cmd) и Perl, который поставляется с ним. Я устанавливаю модули Perl с оболочкой CPAN (команда "cpan"); это работает отлично.

3
reinierpost

У меня были серьезные проблемы со Strawberry, и я чувствовал, что поддержки не было. Хорошие люди в PerlMonks не могли мне помочь, и я сдался. Если эта страница оставляет у вас определенную неуверенность, то есть ваш ответ.

2
AmbroseChapel

Код, который я пишу, попадает в Fortune 500 компаний, поэтому "корпоративное" чувство полезно. До сих пор я использовал ActivePerl, и он отлично работал как для внутренних инструментов, так и для распространения среди этих крупных клиентов.

2
aczarnowski

Я использую Active State Perl 5.014, который работает нормально.

Проблема в том, что у него нет последней версии Padre (среда IDE, среда отладки).

1
Helen Craigman