Как сообщить CPAN об установке всех зависимостей?
Я пробовал установить их cpan
:
cpan> o conf prerequisites_policy follow
cpan> o conf commit
Мне все же пришлось пару раз ответить «у» (но, кажется, меньше, чем раньше).
Есть ли способ заставить его всегда идти вперед и устанавливать? Я хочу оставить его без присмотра.
Казалось бы, я хочу, чтобы флаг всегда доверял CPAN, чтобы делать правильные вещи, и если он предлагает ответ, я хотел бы следовать ему (всегда нажимайте, Enterкогда он что-то спрашивает).
perl
dependencies
cpan
Nifle
источник
источник
Ответы:
Вот краткое описание, делающее эти изменения постоянными, включая автоматическую настройку CPAN в первый раз:
Или объедините его с
local::lib
модулем для непривилегированных пользователей:Запустите его перед использованием оболочки CPAN или чего-то еще.
источник
Попробуйте установить PERL_MM_USE_DEFAULT так:
Это должно заставить CPAN отвечать на все запросы по умолчанию.
источник
export PERL_MM_USE_DEFAULT=1
в свой ~ / .bashrcCan't locate object method "install" via package "xxx" at -e line 1.
добавьте "+" прямо перед названием модуля.Самый последний и лучший ответ на этот вопрос - использовать
cpanm
вместо него (также называемый App :: cpanminus или cpanminus)!Для начальной установки:
или если вы используете
perlbrew
простоили из самого cpan:
С этого момента устанавливайте модули, выполнив (при необходимости от имени пользователя root)
источник
cpanm
, поэтому сказать мне использовать ее - не решение.sudo apt install cpanminus make
.Вот что, я уверен, вы ищете:
источник
Далее следует изменение следующего параметра поверх prerequisites_policy.
Это изменит его с «спросить / да» на «да» и перестанет спрашивать вас.
источник
Возможно, это связано с использованием ExtUtils :: AutoInstall или Module :: AutoInstall . Попробуйте установить переменную среды PERL_AUTOINSTALL. (См. Документацию этих модулей.)
источник
Устанавливать
в комплектации.
См. Переменные конфигурации .
источник
Лично я всего пару раз пытался изменить параметры таким образом, и на самом деле обнаружил, что проще перейти в
CPAN.pm
оболочку, не задаваяcpan
аргументов, а затем настроивCPAN.pm
из интерактивной подсказки:Это
CPAN.pm
запустит утилиту настройки интерфейсов. Просто пропустите его и укажите «следовать» туда, где вам нужно (я забыл вопрос), и все будет хорошо.источник
init
. Например,o conf init prerequisites_policy
. Таким образом, вы не должны пройти через длительный процесс инициализации, но все же получить дружественное приглашение для установки в вопросеЯ обнаружил, что это, безусловно, самый быстрый и надежный способ установки модулей CPAN:
источник
yes|/root/bin/perl -MCPAN -e "CPAN::Shell->notest(qw!install Your::Module!)"
yes
" должно делать?Я пишу это в интересах людей, которые, возможно, пришли на эту страницу в поисках способа установки всех зависимостей модулей, необходимых для конкретного сценария perl. Я написал для этого сценарий:
Его следует запускать как
./installdep.pl yourscript.pl
Это будет использовать cpanminus для установки всех зависимостей модулей, требуемых вашим скриптом. Если cpanm не установлен, он установит его.
источник