Linux'ta pip 'harici olarak yönetilen ortam' Hatası Nasıl Düzeltilir

Linux'ta pip 'harici olarak yönetilen ortam' Hatası Nasıl Düzeltilir
Sizin gibi okuyucular MUO'yu desteklemeye yardımcı oluyor. Sitemizdeki bağlantıları kullanarak bir satın alma işlemi yaptığınızda ortaklık komisyonu kazanabiliriz. Devamını oku.

Python ile sık sık çalışıyorsanız ve yakın zamanda Ubuntu 23.04 veya Fedora sürüm 38'e geçtiyseniz, paketleri Python paket yöneticisi pip ile yüklerken 'harici olarak yönetilen ortam' hatasıyla karşılaşmış olabilirsiniz.





MUO Günün videosu İÇERİĞE DEVAM ETMEK İÇİN KAYDIRIN

Bu hata Ubuntu, Fedora ve diğer dağıtımların eski sürümlerinde asla ortaya çıkmayacağından, bu sinir bozucu ve oldukça şaşırtıcı olabilir. Bu hataya tam olarak neyin sebep olduğunu ve bunu hızlı bir şekilde nasıl düzeltebileceğinizi öğrenelim.





'Harici olarak yönetilen ortam' Hatası Neden Oluşuyor?

  pip harici olarak yönetilen hata

Tüm Linux dağıtımlarının en son sürümleri PEP-668'de tanımlanan standartları benimsiyor. Bu değişiklikler, pip paketlerinin varsayılan olarak global bağlamda kurulmamasını sağlar.





Bu, dağıtımın paket yöneticisi ile Python paket yönetimi araçları arasındaki çatışmayı önlemek amacıyla uygulandı. Detayları konudan öğrenebilirsiniz resmi PEP-668 belgeleri . Bu mekanizmayı geri almak veya geçersiz kılmak istiyorsanız üç yaklaşımı uygulayabilirsiniz.

1. 'HARİCİ OLARAK YÖNETİLEN' Dosyayı Silin

  HARİCİ OLARAK YÖNETİLEN dosyayı silme

Bu, 'harici olarak yönetilen' pip hatasına yönelik en basit düzeltmedir. Tek yapmanız gereken şuraya gitmek: /usr/lib/python3.xx ve sil DIŞARIDAN YÖNETİLEN dizindeki dosya. İşte bunu yapmak için komutlar:



 cd /usr/lib/python3.11 
sudo rm EXTERNALLY-MANAGED

Hatayı düzeltmek için yapmanız gereken tek şey bu. Bu mekanizmayı geri yüklemeyi seçerseniz aynı dosyayı yeniden oluşturun. dokunma komutu :

 sudo touch EXTERNALLY-MANAGED

Artık paketleri pip veya pip3 ile sorunsuz bir şekilde kurabilmelisiniz.





2. Pip Paketlerini Kurmak için Sanal Ortamları Kullanın

Alabileceğiniz başka bir yaklaşım da kullanmaktır. Python projeniz için sanal ortamlar . Sanal ortamlar, programa özel paketleri işletim sisteminden ayırmanın harika bir yoludur ve aynı zamanda projenizi düzgün bir şekilde organize etmenize olanak tanır.

Sanal bir ortamın nasıl oluşturulacağı ve pip ile paketleri nasıl kuracağınız aşağıda açıklanmıştır:





  1. Öncelikle sanal ortamı şu şekilde oluşturun:
     python3 -m venv venv
  2. Kaynak komutunu kullanarak bin dizini içindeki etkinleştirme dosyasını kaynaklayın:
     source venv/bin/activate

Kabuk isteminiz sanal ortam adıyla güncellenmelidir. Artık dilediğiniz Python paketini kurabileceksiniz.

  venv kullanmak harici olarak yönetilen hatayı çözer

Gördüğünüz gibi açık Python paketi ilk başta kurulamadı ancak sanal ortam oluşturulup geçiş yapıldıktan sonra kusursuz bir şekilde kuruluyor.

3. Python Paketlerini Kurmak için pipx kullanın

  pipx ile paket yükleme

pipx, Python paketlerini sanal ve yalıtılmış ortamlarda kurmaya yönelik bir yardımcı programdır. Her paket için sanal ortamlar oluşturmak ve paketlere sembolik bağlantılar oluşturmak gibi adımları otomatikleştirir. .yerel/bin Böylece her paketi istediğiniz zaman kabuktan arayabilirsiniz.

Paketleri yüklemek için pipx'i kullanmak, paketleri sanal ortamlara yüklerken 'harici olarak yönetilen ortam' hatasını önlemenize yardımcı olur. Pipx'i kullanmak için öncelikle dağıtımınızın varsayılan paket yöneticisiyle yükleyin.

Ubuntu/Debian türevlerinde:

 sudo apt-get install pipx

Arch tabanlı sistemlerde:

 sudo pacman -S pipx

Fedora/CentOS/RHEL'de:

 sudo dnf install pipx

Pipx'i yükledikten sonra, paketleri yüklemek için pip'i kullandığınız gibi kullanın. İşte örnek bir komut:

 pipx install openai

Pipx hakkında daha fazla bilgi edinmek için man komutunu kullanarak man sayfasına bakabilirsiniz.

Artık 'Harici Olarak Yönetilen' Hatayı Nasıl Düzelteceğinizi Biliyorsunuz

'Harici olarak yönetilen ortam' hatasını düzelttikten sonra projeniz üzerinde çalışmaya veya genel Python programlama pratiği yapmaya devam edebilmelisiniz. İkincisine odaklanıyorsanız, Python'u veya herhangi bir dili uygulamalı ve ödüllendirici bir şekilde çok daha hızlı öğrenmenize yardımcı olacak farklı oyunlaştırılmış programlama öğrenme yöntemlerine göz atmak isteyebilirsiniz.

iphone ekranımı ucuza nereden tamir ettirebilirim