На самом деле установка модуля обычно выполняется в Windows и Linux следующим образом:
cpan Module::Name
На ваш вопрос.
Perl ожидает тот же набор компиляторов, который использовался дляbuild Perl, который будет использоваться для сборки модуля.
В Windows есть две основные цепочки инструментов.Это тот, который предоставляется Microsoft, и порт GNU.
- Инструмент make, предоставляемый Microsoft, называется
nmake
. - Инструмент make, предоставляемый портом MinGW.инструментов GNU называется
dmake
.
Итак,
- Если ваш Perl был собран с использованием инструментов MS (например, сборок Perl в Windows от ActiveState), вам необходимоиспользовать
nmake
. - Если ваш Perl был собран с использованием инструментов GNU (например, сборок Perl от Strawberry), вам нужно использовать
dmake
.
Что возвращает нас к cpan Module::Name
.
cpan
спросит Perl, какие инструменты использовались для его создания, и использует эти инструменты.
Обычно.Это не так в Windows.cpan
на самом деле гораздо более гибок в Windows.cpan
сначала рассмотрит цепочку инструментов, которая использовалась для сборки Perl.Если он не найден, cpan
установите для вас цепочку инструментов GNU и временно обманывают perl
, чтобы он поверил, что он построен с использованием цепочки инструментов GNU.
Это означает, что вы запускаете cpan Module::Name
, он должен работать независимо от того, чтона ActivePerl.(И есть также ppm install Module::Name
, хотя я бы сначала запустил ppm
без аргументов, чтобы добавить репозитории (например, взятки))