Jak powiedzieć CPAN, aby zainstalował wszystkie zależności?
Próbowałem ustawić je w cpan
:
cpan> o conf prerequisites_policy follow
cpan> o conf commit
Nadal kilka razy musiałem odpowiedzieć „y” (ale rzadziej niż wcześniej).
Czy jest sposób, aby zawsze go zainstalować i zainstalować? Chcę, żeby to było bez opieki.
Wydawałoby się, że chcę, aby flaga zawsze ufała CPAN, że zrobi właściwą rzecz, a jeśli sugeruje odpowiedź, chciałbym ją zastosować (zawsze uderzaj, Entergdy o coś zapyta).
perl
dependencies
cpan
Nifle
źródło
źródło
Odpowiedzi:
Oto jedna linijka powodująca trwałe zmiany, w tym automatyczna konfiguracja CPAN po raz pierwszy:
Lub połącz go z
local::lib
modułem dla użytkowników nieuprzywilejowanych:Uruchom go przed użyciem powłoki CPAN lub czegokolwiek.
źródło
Spróbuj ustawić PERL_MM_USE_DEFAULT w następujący sposób:
Powinno to spowodować, że CPAN będzie odpowiadać domyślnie na wszystkie monity.
źródło
export PERL_MM_USE_DEFAULT=1
do swojego ~ / .bashrcCan't locate object method "install" via package "xxx" at -e line 1.
dodaj „+” tuż przed nazwą modułu.Najnowszą i najlepszą odpowiedzią na to pytanie jest użycie
cpanm
zamiast tego (nazywanego również App :: cpanminus lub cpanminus)!Aby zainstalować go za pomocą bootstrapu:
lub jeśli używasz
perlbrew
po prostulub z samego cpan:
Od tego momentu instaluj moduły, wykonując (w razie potrzeby jako root)
źródło
cpanm
, więc mówienie mi, żebym go używał, nie jest tutaj rozwiązaniem.sudo apt install cpanminus make
.Oto, czego jestem pewien, że szukasz:
źródło
Następuje zmiana następującego parametru na górze prerequisites_policy.
To zmieni go z „zapytaj / tak” na „tak” i przestanie cię pytać.
źródło
Może jest to związane z używaniem ExtUtils :: AutoInstall lub Module :: AutoInstall . Spróbuj ustawić zmienną środowiskową PERL_AUTOINSTALL. (Por. Dokumentacja tych modułów).
źródło
Zestaw
w konfiguracji.
Zobacz Zmienne konfiguracyjne .
źródło
Osobiście tylko kilka razy próbowałem zmodyfikować ustawienia w ten sposób i faktycznie okazało się, że łatwiej jest zejść do
CPAN.pm
powłokicpan
bez podawania argumentów, a następnie konfigurującCPAN.pm
z interaktywnej zachęty:Spowoduje to zainicjowanie
CPAN.pm
narzędzia do konfiguracji interfejsów. Po prostu przejrzyj go i określ „podążaj” tam, gdzie musisz (zapomniałem o pytaniu od ręki) i powinieneś być gotowy.źródło
init
. Na przykłado conf init prerequisites_policy
. W ten sposób nie musisz przechodzić przez długi proces inicjalizacji, ale nadal otrzymujesz przyjazną podpowiedź dotyczącą danego ustawieniaOkazało się, że jest to zdecydowanie najszybszy i najbardziej niezawodny sposób instalacji modułów CPAN:
źródło
yes|/root/bin/perl -MCPAN -e "CPAN::Shell->notest(qw!install Your::Module!)"
yes
”?Piszę to dla dobra osób, które mogły przyjść na tę stronę, szukając sposobu na zainstalowanie wszystkich zależności modułów wymaganych przez określony skrypt Perla. Napisałem do tego scenariusz:
Powinien być uruchamiany jako
./installdep.pl yourscript.pl
Spowoduje to użycie cpanminus do zainstalowania wszystkich zależności modułów wymaganych przez skrypt. Jeśli cpanm nie jest zainstalowany, zainstaluje go.
źródło