Установите модули Perl 6 в нестандартном месте
Установка Perl 6 с использованием Rakudo Star 2016.01 довольно проста. Я сделал ручную установку как предложено здесь:
perl Configure.pl --backend=moar --gen-moar --prefix=/opt/rakudo/rakudo-star-2016.01
make
make install
Perl6 теперь установлен на /opt/rakudo/rakudo-star-2016.01/bin
Panda, менеджер модулей Perl 6, который поставляется вместе с Rakudo, установлен в /opt/rakudo/rakudo-star-2016.01/share/perl6/site/bin
Затем я могу добавить оба пути в переменную $PATH, чтобы сразу запустить работающую установку Perl6.
Моя единственная проблема заключается в том, что установка по умолчанию для модулей Perl 6 все еще находится в каталоге $HOME: ~/.perl6
Тем не менее, я хотел бы установить модули Perl 6 в /opt
а на самом деле в /opt/perl/perl6
Я попытался установить переменную PERL6LIB перед выполнением шагов установки, описанных выше, сexport PERL6LIB=/opt/perl/perl6
но безуспешно, потому что модули все еще установлены ~/.perl6
Как я могу сказать Perl6 или Panda установить модули в нестандартном месте, вне моего каталога $HOME?
1 ответ
Настройка PERL6LIB должна быть достаточной для указания пути, где будут установлены новые модули Perl 6. Эта переменная может быть установлена до установки Perl 6.
export PERL6LIB="/opt/perl/perl6/lib" # or better is to put this line in .profile or .bash_profile
perl Configure.pl --backend=moar --gen-moar --prefix=/opt/rakudo-star/rakudo-star-2016.01
make && make install
Это установит Perl6 в /opt/rakudo-star/rakudo-star-2016.01/bin
и панда в /opt/rakudo-star/rakudo-star-2016.01/share/perl6/site/bin
Новые модули могут быть установлены с Panda, например,
panda install Task::Star
и они должны быть найдены в /opt/perl/perl6/lib/.precomp
(это скрытая папка...)
Во время этой установки ~/.perl6
все еще создан, но должен быть пустым.