← man/dev_and_programming
cpan — man cpan — 80×24
ugur@toprak:~/man/dev_and_programming$man cpan
Bölüm 1 Geliştirme & Programlama

cpan

komut satırından CPAN ile kolayca etkileşime girin

Özet

	       # argümanlarla ve anahtarsız kullanım, belirtilen modülleri kurar
	       cpan modul_adi [ modul_adi ... ]

	       # anahtarlarla kullanım, modülleri ekstra davranışlarla kurar
	       cpan [-cfFimtTw] modul_adi [ modul_adi ... ]

	       # local::lib kullanın
	       cpan -I modul_adi [ modul_adi ... ]

	       # daha hızlı yansılar için tek seferlik yansı geçersiz kılma
	       cpan -p ...

	       # yalnızca nokta ile, geçerli dizindeki dağıtımdan kurulum yapın
	       cpan .

	       # argümansız kullanım, CPAN.pm kabuğunu (shell) başlatır
	       cpan

	       # argümansız ancak bazı anahtarlarla kullanım
	       cpan [-ahpruvACDLOPX]

Açıklama

Bu betik, CPAN'a yönelik bir komut arayüzü (kabuk değil) sağlar. Şu anda işi yapmak için CPAN.pm kütüphanesini kullanır, ancak CPAN.pm için tek seferlik bir komut çalıştırıcısı değildir.

Seçenekler

  • -a: CPAN::Shell->autobundle ile bir CPAN.pm otomatik paketi (autobundle) oluşturur.

-A modül [ modül ... ] Belirtilen modüllerin birincil bakımcılarını (primary maintainers) gösterir.

-c modül Belirtilen modülün dizinlerinde make clean komutunu çalıştırır.

-C modül [ modül ... ] Belirtilen modüller için Değişiklikler (Changes) dosyalarını gösterir.

-D modül [ modül ... ] Modül ayrıntılarını gösterir. Bu, güncel olmayan her modül için (yani yerel olarak kurulmuş ancak CPAN'da daha yeni sürümleri bulunan modüller) bir satır yazdırır. Her satır üç sütundan oluşur: modül adı, yerel sürüm ve CPAN sürümü.

  • -f: Normalde başarısız olacağı durumlarda belirtilen işlemi zorlar. Testleri başarısız olsa bile bir modülü kurmak için bunu kullanın. Bu seçeneği kullandığınızda, bir modülü zorla kurmak istiyorsanız -i seçeneği isteğe bağlı olmaktan çıkar:

% cpan -f -i Module::Foo

  • -F: CPAN.pm'in herhangi bir şeyi kilitleme girişimlerini kapatır. Aynı dizinde birden fazla betiğin işlem yapmaya çalışması riskine karşı bu seçeneği kullanırken dikkatli olmalısınız. "-j" seçeneği ile özel bir yapılandırma yüklüyorsanız ve bu yapılandırma kendi çalışma dizinlerini ayarlıyorsa bu durum çok fazla endişe oluşturmaz.

-g modül [ modül ... ] Modülün en son dağıtımını geçerli dizine indirir.

-G modül [ modül ... ] UYGULANMAMIŞTIR

Modüllerin en son dağıtımlarını geçerli dizine indirir, her dağıtımı paketten çıkarır ve her biri için bir git deposu oluşturur.

Bu özelliği istiyorsanız, Yanick Champoux'nun "Git::CPAN::Patch" dağıtımına göz atın.

  • -h: Bir yardım mesajı yazdırır ve çıkar. "-h" belirttiğinizde, diğer tüm seçenekleri ve argümanları yoksayar.

-i modül [ modül ... ] Belirtilen modülleri kurar. Başka bir anahtar yoksa bu anahtar örtük olarak kabul edilir.

  • -I: "local::lib" kütüphanesini yükler (kütüphane yollarını yüklemek için kullanılan "-I" gibi düşünün). "-l" seçeneğinin zaten alınmış olması kötü oldu.

-j Config.pm CPAN yapılandırma verilerini içeren dosyayı yükler. Bu dosya, $CPAN::Config değişkenini anonim bir karma tablo (hash) olarak tanımlayan standart CPAN/Config.pm dosyasıyla aynı formatta olmalıdır.

  • -J: Yapılandırmayı CPAN.pm'in kullandığı formatta döker. Bu, yapılandırmayı kontrol etmenin yanı sıra dökümü yeni ve özel bir yapılandırma için başlangıç noktası olarak kullanmak için kullanışlıdır.

  • -l: Kurulu tüm modülleri sürümleriyle birlikte listeler.

-L yazar [ yazar ... ] Belirtilen yazarlara ait modülleri listeler.

  • -m: Belirtilen modülleri derler (make).

-M yansi1,yansi2,... Yalnızca bu çalışma için kullanılacak yansıların (mirrors) virgülle ayrılmış bir listesi. "-P" seçeneği bunları sizin için otomatik olarak bulabilir.

  • -n: Bir deneme çalışması (dry run) yapar, ancak aslında hiçbir şey kurmaz. (uygulanmamıştır)

  • -O: Güncel olmayan modülleri gösterir.

  • -p: Yapılandırılmış yansılara ping gönderir ve bir rapor yazdırır.

  • -P: Kullanabileceğiniz en iyi yansıları bulur ve bunları geçerli oturum için kullanır.

  • -r: CPAN::Shell->recompile ile dinamik olarak yüklenen modülleri yeniden derler.

  • -s: CPAN.pm kabuğuna geçiş yapar. Herhangi bir argüman belirtmezseniz bu komut bunu otomatik olarak yapar.

-t modül [ modül ... ] Belirtilen modüller üzerinde make test komutunu çalıştırır.

  • -T: Modülleri test etmez. Sadece kurar.

  • -u: Kurulu tüm modülleri yükseltir. Bunu körü körüne yapmak bazı şeyleri gerçekten bozabilir, bu yüzden bir yedek bulundurun.

  • -v: Betik sürümünü ve CPAN.pm sürümünü yazdırır, ardından çıkar.

  • -V: cpan istemcisi hakkında ayrıntılı bilgi yazdırır.

  • -w: UYGULANMAMIŞTIR

cpan uyarılarını açar. Bu, dizin izinleri gibi çeşitli şeyleri kontrol eder ve yaşayabileceğiniz sorunlar hakkında sizi bilgilendirir.

-x modül [ modül ... ] Yanlış yazmış olabileceğinizi düşündüğünüz modül isimlerine yakın eşleşmeleri bulur. Bu, isteğe bağlı olan Text::Levenshtein veya Text::Levenshtein::Damerau modüllerinin kurulmasını gerektirir.

  • -X: Tüm isim alanlarını standart çıktıya döker.

Örnekler

yardım mesajı yazdırır

cpan -h

sürüm numaralarını yazdırır

cpan -v

otomatik paket (autobundle) oluşturur

cpan -a

modülleri yeniden derler

cpan -r

kurulu tüm modülleri yükseltir

cpan -u

modülleri kurar (tek başına -i isteğe bağlıdır)

cpan -i Netscape::Booksmarks Business::ISBN

modülleri zorla kurar (-i kullanılmalıdır)

cpan -fi CGI::Minimal URI

modülleri test etmeden kurar

cpan -Ti CGI::Minimal URI

Ortam değişkenleri CPAN.pm içinde ortam değişkenlerini kullanan birkaç bileşen vardır. ExtUtils::MakeMaker ve Module::Build derleme araçları bazılarını kullanırken, diğerleri bunların üzerindeki seviyeler için önem taşır. Bunların bazıları Perl Toolchain Gang tarafından belirlenmiştir:

Lancaster Uzlaşısı (Lancaster Consensus): https://github.com/Perl-Toolchain-Gang/toolchain-site/blob/master/lancaster-consensus.md

Oslo Uzlaşısı (Oslo Consensus): https://github.com/Perl-Toolchain-Gang/toolchain-site/blob/master/oslo-consensus.md

NONINTERACTIVE_TESTING Kimsenin takip etmediğini varsayar ve bunu doğru şekilde yapan dağıtımlar için bilgi istemlerini atlar. cpan(1) halihazırda bir değere sahip olmadığı sürece (bu değer yanlış olsa bile) bunu 1 olarak ayarlar.

PERL_MM_USE_DEFAULT Sorulan sorular için varsayılan yanıtı kullanır. cpan(1) halihazırda bir değere sahip olmadığı sürece (bu değer yanlış olsa bile) bunu 1 olarak ayarlar.

CPAN_OPTS "PERL5OPT" değişkeninde olduğu gibi, komut satırında belirttiklerinize eklenecek ek cpan(1) seçeneklerinden oluşan bir dizgi.

CPANSCRIPT_LOGLEVEL Kullanılacak günlük seviyesi (log level); gömülü, minimal günlükçü veya kurulmuşsa Log::Log4perl ile. Olası değerler "Log::Log4perl" seviyeleriyle aynıdır: "TRACE", "DEBUG", "INFO", "WARN", "ERROR" ve "FATAL". Varsayılan değer "INFO"dur.

GIT_COMMAND Git özellikleri için kullanılacak "git" ikili dosyasının yolu. Varsayılan değer "/usr/local/bin/git"tir.

Çıkış Değerleri

Betik, her şeyin çalıştığını düşündüğünde sıfır değeriyle, bir şeylerin başarısız olduğunu düşündüğünde ise pozitif bir sayıyla çıkar. Ancak, bazı durumlarda kontrolü altında olmayan şeylerin çıktılarına bakarak bir başarısızlık tahmini yapmak zorunda kaldığını unutmayın. Şimdilik çıkış kodları belirsizdir:

1 Bilinmeyen bir hata

2 Harici bir sorun oluştu

4 Betikle ilgili dahili bir sorun oluştu

8 Bir modülün kurulumu başarısız oldu

Yapılacaklar

  • komut satırından tek seferlik yapılandırma değerleri geçmek

Hatalar (Bugs)

  • bildirilmiş bir hata yok

Ayrıca Bakınız

Ortam değişkenleri ve yapılandırma dahil olmak üzere çoğu davranış doğrudan CPAN.pm kütüphanesinden gelir.

Kaynak Koduna Erişim

Bu kod, Github'daki CPAN.pm deposunda yer almaktadır:

https://github.com/andk/cpanpm

Kaynak kod eskiden başka bir GitHub deposunda ayrı olarak takip ediliyordu, ancak asıl kaynak kod artık yukarıdaki depodadır.

Katkıda Bulunanlar

Japheth Cleaver, zorla kuruluma (-f) izin veren kısımları ekledi.

Jim Brandt, güncellik ve Değişiklikler (Changes) özellikleri için öneride bulundu ve ilk uygulamayı sağladı.

Adam Kennedy, exit() fonksiyonunun, bu betiğin .bat uzantısıyla sonlandığı Windows üzerinde sorunlara yol açtığına dikkat çekti.

Yazar

brian d foy, "bdfoy@cpan.org"

Telif Hakkı

Telif Hakkı (c) 2001-2015, brian d foy, Tüm Hakları Saklıdır.

Bunu Perl ile aynı koşullar altında yeniden dağıtabilirsiniz.

perl v5.34.1 21 Şubat 2026 CPAN(1)