Bagaimana cara memberitahu CPAN untuk menginstal semua dependensi?
Saya mencoba mengatur ini di cpan
:
cpan> o conf prerequisites_policy follow
cpan> o conf commit
Saya masih harus menjawab "y" beberapa kali (tapi rasanya lebih sedikit dari sebelumnya).
Adakah cara untuk membuatnya selalu maju dan menginstal? Saya ingin membuatnya tanpa pengawasan.
Tampaknya saya ingin sebuah bendera selalu mempercayai CPAN untuk melakukan hal yang benar, dan jika itu memberikan jawaban, saya ingin mengikutinya (selalu tekan Enterketika ditanya sesuatu).
perl
dependencies
cpan
Nifle
sumber
sumber
Jawaban:
Berikut ini satu baris yang membuat perubahan ini permanen termasuk konfigurasi CPAN pertama kali otomatis:
Atau gabungkan dengan
local::lib
modul untuk pengguna yang tidak memiliki hak istimewa:Jalankan sebelum menggunakan shell CPAN atau apa pun.
sumber
Coba atur PERL_MM_USE_DEFAULT seperti ini:
Itu harus membuat CPAN menjawab default untuk semua prompt.
sumber
export PERL_MM_USE_DEFAULT=1
ke ~ / .bashrcCan't locate object method "install" via package "xxx" at -e line 1.
tambahkan "+" tepat sebelum nama modul.Jawaban terbaru dan terbaik untuk pertanyaan ini adalah dengan menggunakan
cpanm
(juga disebut sebagai App :: cpanminus atau cpanminus)!Untuk bootstrap, instal:
atau jika Anda
perlbrew
hanya menggunakanatau dari cpan itu sendiri:
Sejak saat itu instal modul dengan menjalankan (sebagai root jika perlu)
sumber
cpanm
, jadi memberitahu saya untuk menggunakannya bukanlah solusi di sini.sudo apt install cpanminus make
.Inilah yang saya yakin Anda cari:
sumber
Mengubah parameter berikut di atas prerequisites_policy mengikuti.
Ini akan mengubahnya dari "tanya / ya" menjadi "ya" dan berhenti bertanya kepada Anda.
sumber
Mungkin ini terkait dengan ExtUtils :: AutoInstall atau Module :: AutoInstall yang digunakan. Coba setel variabel lingkungan PERL_AUTOINSTALL. (Lihat dokumentasi dari modul-modul itu.)
sumber
Set
dalam konfigurasi.
Lihat Variabel Konfigurasi .
sumber
Secara pribadi saya hanya mencoba beberapa kali untuk mengubah pengaturan dengan cara itu dan benar-benar merasa lebih mudah untuk masuk ke
CPAN.pm
shell dengancpan
tidak memberikan argumen, kemudian mengkonfigurasiCPAN.pm
dari prompt interaktif:Ini akan memulai
CPAN.pm
utilitas konfigurasi antarmuka. Cukup jalankan melalui itu dan tentukan "ikuti" di mana Anda perlu (saya lupa pertanyaannya begitu saja), dan Anda harus melakukannya dengan baik.sumber
init
. Misalnyao conf init prerequisites_policy
,. Dengan begitu, Anda tidak perlu melalui proses inisialisasi yang lama, tetapi tetap mendapatkan prompt ramah untuk pengaturan yang dimaksudSaya menemukan ini, sejauh ini, cara tercepat dan paling andal untuk menginstal modul CPAN:
sumber
yes|/root/bin/perl -MCPAN -e "CPAN::Shell->notest(qw!install Your::Module!)"
yes
" lakukan?Saya menulis ini untuk kepentingan orang-orang yang mungkin datang ke halaman ini mencari cara untuk menginstal semua dependensi modul yang dibutuhkan oleh skrip perl tertentu. Saya menulis skrip untuk itu:
Ini harus dijalankan sebagai
./installdep.pl yourscript.pl
Ini akan menggunakan cpanminus untuk menginstal semua dependensi modul yang diperlukan oleh skrip Anda. Jika cpanm tidak diinstal, itu akan menginstalnya.
sumber