Como faço para dizer ao CPAN para instalar todas as dependências?
Tentei defini-los em cpan
:
cpan> o conf prerequisites_policy follow
cpan> o conf commit
Eu ainda tive que responder "s" algumas vezes (mas menos do que parecia).
Existe uma maneira de sempre prosseguir com a instalação? Eu quero deixar isso sem supervisão.
Parece que eu quero um flag para sempre confiar no CPAN para fazer a coisa certa, e se ele sugerir uma resposta, eu gostaria de segui-lo (sempre acerte Enterquando ele perguntar algo).
perl
dependencies
cpan
Nifle
fonte
fonte
Respostas:
Aqui está o one-liner que torna essas alterações permanentes, incluindo a configuração automática do CPAN pela primeira vez:
Ou combine-o com o
local::lib
módulo para usuários não privilegiados:Execute-o antes de usar o shell CPAN ou qualquer outro.
fonte
Tente definir PERL_MM_USE_DEFAULT assim:
Isso deve fazer com que o CPAN responda o padrão a todos os prompts.
fonte
export PERL_MM_USE_DEFAULT=1
ao seu ~ / .bashrcCan't locate object method "install" via package "xxx" at -e line 1.
adicione um "+" logo antes do nome do módulo.A melhor e mais recente resposta a essa pergunta é usar em seu
cpanm
lugar (também conhecido como App :: cpanminus ou cpanminus)!Para inicializar, instale-o:
ou se você estiver usando
perlbrew
simplesmenteou do próprio cpan:
A partir de então, instale os módulos executando (como root, se necessário)
fonte
cpanm
, então dizer para usar não é a solução aqui.sudo apt install cpanminus make
.Tenho certeza de que você está procurando:
fonte
A seguir, alterando o seguinte parâmetro além da prerequisites_policy.
Isso mudará de "perguntar / sim" para "sim" e parará de perguntar a você.
fonte
Talvez esteja relacionado ao ExtUtils :: AutoInstall ou Module :: AutoInstall sendo usado. Tente definir a variável de ambiente PERL_AUTOINSTALL. (Cf. a documentação desses módulos.)
fonte
Conjunto
na configuração.
Consulte Variáveis de configuração .
fonte
Pessoalmente, tentei apenas algumas vezes modificar as configurações dessa forma e, na verdade, achei mais fácil inserir no
CPAN.pm
shellcpan
sem fornecer argumentos e, em seguida, configurarCPAN.pm
no prompt interativo:Isso iniciará o
CPAN.pm
utilitário de configuração de interfaces. Simplesmente percorra-o e especifique "seguir" onde você precisa (esqueci a pergunta de improviso), e você estará pronto para ir.fonte
init
. Por exemploo conf init prerequisites_policy
,. Dessa forma, você não precisa passar pelo longo processo de inicialização, mas ainda obtém o prompt amigável para a configuração em questãoEu descobri que esta é, de longe, a maneira mais rápida e confiável de instalar módulos CPAN:
fonte
yes|/root/bin/perl -MCPAN -e "CPAN::Shell->notest(qw!install Your::Module!)"
yes
" deve fazer?Estou escrevendo isso para o benefício de pessoas que podem ter vindo a esta página em busca de uma maneira de instalar todas as dependências de módulo necessárias para um script perl específico. Eu escrevi um roteiro para isso:
Deve ser executado como
./installdep.pl yourscript.pl
Isso usará cpanminus para instalar todas as dependências de módulo exigidas pelo seu script. Se o cpanm não estiver instalado, ele o instalará.
fonte