Как бороться с проблемами сборки ActiveState для его ppm?

Я использую версию ActiveState Perl от сообщества под Windows, и поэтому мне нужно либо оставить старые версии, либо использовать самые последние выпуски. Проблема в том, что я часто обнаруживал, что некоторые из моих используемых пакетов не строятся на их текущих дистрибутивах Perl, некоторые из этих проблем со сборкой исправляются "когда-нибудь". В настоящее время SOAP::Lite помечен как неуспешно построенный, похоже, из-за некоторых отсутствуют зависимости, хотя тесты самого SOAP::Lite проходят успешно. Только ожидание, пока это не будет исправлено, не кажется мне хорошим решением, поэтому мне интересно:

Есть ли какая-либо известная передовая практика, как справляться с такими проблемами сборки, касающимися ActiveState? Есть ли какой-нибудь трекер ошибок или что-то еще, чтобы заставить их взглянуть на эти проблемы? Будет ли возможность предоставить патчи, если у кого-то будут решения для некоторых проблем? Или нужно всегда связываться с проектом, чтобы пакет не создавался? Потому что некоторые проблемы явно связаны со средой ActiveStates.

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


person Thorsten Schöning    schedule 02.03.2015    source источник
comment
Если он не будет собран из исходного кода, вы можете обнаружить, что использование ppm для его установки будет работать.   -  person Sobrique    schedule 02.03.2015
comment
Сам ppm не может собрать пакет и поэтому не предоставляет его, как показывают мои ссылки.   -  person Thorsten Schöning    schedule 02.03.2015
comment
Хорошо, достаточно честно. Обычно я нахожу, что между ppm и cpan install я могу заставить большинство вещей работать, но в целом я думаю, что ActiveState на самом деле не заинтересован, если вы не платный клиент.   -  person Sobrique    schedule 02.03.2015


Ответы (1)


В этом случае Crypt::SSLeay не удается построить, поскольку он не может определить, где ActiveState хранит OpenSSL при создании модулей PPM. Я не знаю, почему SOAP::Lite объявляет зависимость от Crypt::SSLeay, но, к сожалению, это так.

Таким образом, менеджер пакетов не может упаковать модуль.

Поскольку проблем с созданием SOAP::Lite не возникает, загрузите пакет, извлеките и выполните

C:\...> perl Makefile.PL
C:\...> dmake
C:\...> dmake test

и, наконец, если тесты пройдены,

dmake install

танец.

Модуль Makefile.PL интересен тем, что объявляет явные зависимости как от IO::Socket::SSL , так и от Crypt::SSLeay, тогда как все, что ему нужно, — это рекомендовать зависимость от LWP::Protocol::https.

Я должен отметить, что IO::Socket:: SSL — это то, что вам нужно.

person Sinan Ünür    schedule 02.03.2015
comment
Спасибо за ответ, но цель моего вопроса не в том, как сделать это самостоятельно, а в том, как бороться с ActiveState. Они должны исправить свою настройку сборки, и, возможно, они просто не знают о проблеме, или им все равно, или что-то в этом роде... Я просто не могу найти никакой информации. - person Thorsten Schöning; 02.03.2015