Должен ли я выбрать ActivePerl или Strawberry Perl для Windows? [дубликат]



этот вопрос уже есть ответ здесь:



Я совершенно новичок в Perl, но я хотел бы попробовать его. Я читал о двух конкурирующих дистрибутивах, доступных для платформы Windows (я думаю, что есть просто Perl на других ОС :).



Википедия говорит, что Strawberry поставляется с дополнительными инструментами dev для компиляции модулей CPAN, если это необходимо. Звучит довольно хорошо для меня.



Он также говорит, что ActivePerl имеет много предварительно упакованных модулей, которые легче установить с PPM. Звучит тоже здорово!



есть четкий компромисс между этими двумя. И мне интересно, что я должен выбрать, чтобы начать? Если я выберу один, насколько сложно перейти на другие?



Edit: я дал обоим дистрибутивам пробег на пару недель. Мне действительно понравились оба, что хорошо! ни с одним из них нельзя ошибиться. я закончил с ActivePerl просто потому, что он поставляется с автономной документацией(в HTML) - великий Спаситель жизни для тех, кто находится на дороге или просто не всегда связан. Мне было очень легко начать работу с языком Perl, когда я был в отпуске, когда меня не было всегда в сети.



клубника не меньше, если не больше. Так что я могу полностью рекомендовать его тоже. И я должен сказать, что нужно просто выучить Perl-это очень красивый язык. Дайте ему попробовать!

761   10  

10 ответов:

после использования обоих в течение многих лет, я бы сказал, Для меня, по крайней мере, Activeperl является гораздо более удобным выбором. Элемент ppm-Installer включено в Activeperl позволяет добавлять альтернативные хранилища ppm что даст вам доступ почти ко всем полезным модулям perl, доступным на CPAN, но подготовленным и протестированным для windows. Это был для меня, в конечном счете, гораздо лучший (и более надежный) выбор. Даже для версии windows http-сервера Apache существует предварительно скомпилированный mod_perl (2.0.4) ppm доступен, который будет (сделал для меня) работать из коробки с Activeperl 5.12.1 и Apache 2.2.15.

Я думаю, что я бросил клубнику после попытки установить DBI + DBD:: mysql на Windows 7 (что является ежу понятно в Activeperl, просто нажмите на ppms и выберите Установить).

но, может быть, это уже решено. И, возможно, можно выбрать каталог, где клубника устанавливается (I невозможно.)

кстати: для компиляции собственных встроенных или XS вещей, просто установите компилятор MinGW по ppm (Я этого не делал, но это выглядит интересно).

в отношении

rbo

дополнительное соглашение: прочитав комментарий ниже, я снова проверил Strawberry Perl и теперь можно изменить каталог установки, который является обозначенной функцией версии 5.12.0 (это текущая версия). Это решило бы одну важную проблему (по моему) недостаток клубники Perl (по сравнению с Activeperl).

Strawberry Perl использует CPAN, что означает, что вы в курсе, насколько модули обеспокоены. Когда вещи добавляются в CPAN, у вас есть немедленный доступ к ним. Strawberry Perl также поставляется с MinGW, что означает, что Strawberry Perl может использовать довольно много модулей XS непосредственно из CPAN без каких-либо изменений. Распределение MinGW поставляется с gcc,make,ld и другие инструменты, которые помогут вам построить модули. Я думаю, что Strawberry Perl также поставляется с несколькими модулями, которые позволяют вам установите PPMs (Perl Package Manager files).

ActivePerl устанавливает модули, используя свой собственный формат, называемый PPM (Perl Package Manager). Официальный репозиторий размещен в ActiveState. Вы можете найти PPMs для большинства популярных модулей, поэтому у вас не должно быть никаких проблем, если вы не ищете неясный или действительно новый пакет (так что кровоточащий материал не будет работать, потому что PPM обычно отстает от CPAN). Хотя проще установить, чем модули CPAN, PPMs специально созданы для Windows и поэтому некоторые модули CPAN не будут работать (потому что они делают Unix-специфические вещи).

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

другой вариант-установить Cygwin и Perl, который поставляется с Cygwin. Я делал это раньше, и это работает достаточно хорошо. Вы также получаете доступ к CPAN.

выберите то, что вы думаете, работает лучше для вас.

усиливая только немного на полезный ответ Вивина Палиата:

acitvestate / PPM плюсы: если есть PPM для вашей версии, это будет работать, и просто.

ActiveState / PPM минусы: не всегда есть PPM или, по крайней мере, не всегда актуальный.

Strawberry / CPAN pros: ваш репозиторий-это CPAN, а не куча двоичных файлов, поддерживаемых третьими лицами. У вас есть новые модули в момент их выпуска автором, и вы используете сборку система, которую задумал автор.

клубника / CPAN Минусы: Не все гарантированно построить отлично с инструментами Windows.

клубника / CPAN смягчающий фактор: клубника разработчики пытаются действительно, очень сложно чтобы убедиться, что все идет гладко и что как можно больше CPAN доступно для вас, и когда модули идентифицируются как проблемные места (трудно построить на Windows, но требуется для других популярных модулей / приложений), они будут либо работать с автором, чтобы получить модуль фиксированной, так что все можете установите его, или в исключительных случаях, примените свои собственные исправления и свяжите модуль с клубникой или клубничным профессионалом.

Я предпочитаю клубнику. Я ценю то, что ActiveState пытается сделать, но я думаю, что это узкое место в процессе разработки. Они были необходимые прежде чем сообщество собралось вместе и построило клубнику, чтобы принести окна в "первый мир " экосистемы Perl, но они больше не нужны.

Strawberry более уникален в своем подходе, и я всегда был очень счастлив, когда работал с ним.

ActiveState, однако, из-за своей пользовательской системы управления пакетами, была колоссальной болью, когда я работал с ней. Это имеет значение, когда вы находитесь в корпоративной среде.

для просто возиться, ИМО, клубника лучше. / субъективно

оба велики и работают одинаково. Клубника известна тем, что может создавать модули XS, но вы можете сделать это и с ActiveState, если вы просто установите Visual Studio SDK (или бесплатную экспресс-версию).

в этом отношении, если у вас есть доступ к Visual Studio, лучшее, что вы можете сделать, это построить Perl из источника (это довольно легко, если Вы читаете README) и продолжать строить свои модули с тем же компилятором. Что на самом деле лучше, чем смесь компилятор / модули.

одна вещь, которую вы должны учитывать при использовании ActiveState: если вы устанавливаете его на сервере, выходящем в интернет, то вам необходимо купить бизнес-лицензию ($1000/год/сервер, как отметил Рон Варшавски). Это не значит, что это не сработает, это только вопрос того, чтобы быть требованием в лицензионном соглашении. Многие люди не знают этого и установить его на интернет-серверы, не покупая соответствующую лицензию.

в идеальном мире, я бы выбрал debian-interix или pkgsrc-interix perl (не древний Perl, который поставляется с Interix/SFU/SUA), поскольку он обеспечивает самую POSIX / UNIX-подобную систему (включая реальную вилку копирования на запись, а не эмуляцию вилки windows от Cygwin). У меня в прошлом (и он установлен на машинах Windows здесь), но не каждый может / будет устанавливать SFU/SUA только для Perl. В этих случаях я бы рекомендовал ActivePerl, в первую очередь для интерфейса знакомство для пользователей Windows (промилле графическая оболочка по сравнению с архива CPAN) и ее интеграции с набором разработки на Perl (PerlExe, PerlNET, PerlSvc, и друзей). Кроме того, вопреки тому, что ответили другие, вы можете использовать CPAN (и оболочку CPAN) с ActivePerl (хотя это включает в себя установку необходимых инструментов разработки через PPM сначала), если вам это нужно.

ActivePerl исключает тонны модулей из Community edition, и создание их под Windows-настоящая боль.

кроме того, они позволят вам скачать и использовать только последние версии бесплатно. Все остальное, как доступ к 5.8.8 или к более ранней версии модулей либо бизнес ($1000/год/сервер) или Enterprise edition (за цитату).

Если ваш дизайн вашего приложения правильно, это не должно иметь значения, что вы выбираете.

большое значение могут иметь версии различных модулей, которые каждый может предоставить или не предоставить. Пакеты PPM могут отставать от выпусков CPAN, но если вы не будете осторожны, выпуски CPAN bleeding edge могут нарушить обратную совместимость. Кроме того, иногда будут пакеты PPM для вещей, которые просто не будут правильно построены под клубникой (хотя это означает, что модуль плохо спроектирован чаще всего-нет).

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

Если вы используете box.com клиент для синхронизации файлов, то вы, вероятно, хотите (по крайней мере, на данный момент), чтобы пойти с клубникой Perl. Исполняемый промилле вступает в противоречие с одним из библиотеки DLL Box.com . Графический интерфейс не будет запускаться вообще (давая сообщение Windows, что " perl ... переводчик перестал работать".) У меня также были периодические проблемы с использованием версии командной строки ppm, когда Box.com клиент установлен.

Если Ларри Уолл использует клубничный Perl, то и вы должны. ;)

Comments

    Ничего не найдено.