CentOS 7'de pip nasıl kurulur?


110

CentOS 7 EPEL artık Python 3.4'ü içeriyor: yum install python34

Bununla birlikte, bunu denediğimde, Python 3.4 başarılı bir şekilde kurulmasına rağmen pip yüklemiyor gibi görünüyor. Garip, çünkü pipvarsayılan olarak Python 3.4'e dahil edilmelidir. which pip3hiçbir şey bulamaz, bulamaz which pip.

CentOS 7 EPEL sürümünde Python 3.4 paketinden pip'e nasıl erişebilirim?



1
Oraya baktım ama maalesef hiçbir şey ilgisi yok.
Jeff Widman

Yani pip34ikili yok mu? Yüklüyse her zaman pip aracılığıyla arayabileceksiniz python -m pip. O yüklü değilse python -m ensurepipkullanılabilir bunu bootstrap. İkinci komutu çağırmak için yükseltilmiş haklara ihtiyacınız olabilir.
cel

1
Doğru, pip*bulabileceğim ikili dosya yok /usr/bin/. Doğru yere baktığımdan oldukça eminim çünkü orası python3.4ve yeri orası ve pyvenv-3.4başka bir yere sembolik bağlı değiller. Pekala, biraz can sıkıcı olan python3.4 paketine dahil edilmemiş gibi görünüyor. ensurepipModül için yok python3.4ben muhtemelen sadece Epel gemileri kadar IUS repo kullanacağız böylece, ya python3-pipveya eşdeğeri.
Jeff Widman

Yanıtlar:


158

Pip3'ü (python3.x paketleri için) CentOS 7'ye kurmanın en kolay yolu şudur:

$ sudo yum install python34-setuptools
$ sudo easy_install-3.4 pip

Elbette, EPEL deposunu önceden etkinleştirmeniz gerekir.

Artık python3.x için paketleri kurmak üzere aşağıdaki gibi komutları çalıştırabilmelisiniz:

$ pip3 install foo

Her şeyi aklı başında tutarken, bunun da en iyi çözüm olduğunu düşünüyorum. Ben düzenleme tavsiye daha dont init .py
laapsaap

Mutabık kalınan en iyi çözüm, bunu varsayılan yanıt yapar
johhny B

7
RHEL-7 sistemimde, EPEL kurulumuyla başarılı bir şekilde yaptımyum install python34-pip
mike

1
easy_install-3.4 pipSistemin üzerine yazdığına dikkat etmek gerekir pip. Daha yum reinstall python-pipsonra sorun olmaması için ödül verdim . Bu pip3, beklendiği gibi onu kullanmak için açıkça aramanız gerektiği anlamına gelir .
miken32

52
curl https://bootstrap.pypa.io/get-pip.py | python3.4

Veya herhangi bir curlnedenle sahip değilseniz :

wget https://bootstrap.pypa.io/get-pip.py
python3.4 get-pip.py

Bundan sonra koşabilmelisin

$ pip3

1
Bu hatayı aldım: zipimport.ZipImportError: veri sıkıştırması açılamıyor; zlib mevcut değil ... bunun neden olduğunu biliyor musunuz?
SoldierCorp

Bağlı olarak, zlib-devel veya zlib'iniz yok gibi görünüyor. Paket yöneticinizle yüklemeyi deneyebilir misiniz? sudo yum install zlib veya sudo apt-get install zlib. Umarım bu yardımcı olur.
DevOops

Ayrıca @SoldierCorp ile aynı sorunla karşı karşıyayım ama yüklemeye çalıştığımda neler olduğu hakkında herhangi bir fikir zlibveriyor Package zlib-1.2.3-29.el6.x86_64 already installed and latest versionmu?
Mostafiz Rahman

OS X 10.11'e kuruyorsanız, xcode kurulumunu tekrar çalıştırmayı deneyebilirsiniz: xcode-select --install
DevOops

Centos 6.7
Mostafiz Rahman

16

Python34 için CentOS 7 yum paketi ensurepipmodülü içerir, ancak bazı nedenlerden dolayı bu modülün bir parçası olması gereken kurulum araçları ve pip dosyaları eksiktir. Düzeltmek için en son tekerlekleri PyPI'den modül _bundleddizinine indirin ( /lib64/python3.4/ensurepip/_bundled/):

setuptools-18.4-py2.py3-none-any.whl
pip-7.1.2-py2.py3-none-any.whl

daha sonra __init__.pyindirilen sürümlerle eşleşecek şekilde düzenleyin :

_SETUPTOOLS_VERSION = "18.4"
_PIP_VERSION = "7.1.2"

daha sonra python3.4 -m ensurepipamaçlandığı gibi çalışır. Bir sanal ortam oluşturduğunuz her seferinde otomatik olarak çağrıldığından emin olun, örneğin:

pyvenv-3.4 py3
source py3/bin/activate

Umarım RH bozuk Python3.4 yum paketini düzeltir, böylece manuel yama gerekmez.


2
Çok minnettarım. Buna ihtiyaç duyanlar için tekerlekler kurulum araçları için burada pypi.python.org/simple/setuptools ve burada pip pypi.python.org/simple/pip
yoshiwaan

Maalesef, surepip'in init .py dosyasını düzenlemek RPM doğrulama hatasına neden olur ve paket güncellemelerinde de üzerine yazılır.
carlwgeorge

2
Bu karmaşaya neden olma gerekçelerinin ne olduğunu gerçekten bilmek isterim . Kendime bunun iyi bir sebebi olmalı
diyorum

@xenithorb, mantık muhtemelen pip'i ayrı paketlemekti - çünkü Fedora'da da var python3-pip. EPEL projesindeki python3 görünüşe göre hala devam ediyor.
maxschlepzig

EPEL (kurumsal linux için ekstra paketler) python36artık birlikte çalışıyor python3.6 -m ensurepip.
Kevin

9

Güncelleme: Aşağıda bahsedilen python34 hatası nihayet düzeltildi. Şimdi mükemmel bir seçim.

Bozuk EPEL python34 paketleri kullanmak yerine , IUS deposunu etkinleştirebilir ve düzgün çalışmasını sağlayabilirsiniz .

  • sanal ortamlarda pip

Ana python34uve python35uIUS paketleri, sanal ortamları önyüklemek için paketlenmiş pip tekerlekleri ve kurulum araçlarını içeren pyvenv aracını ( /usr/bin/pyvenv-3.4veya /usr/bin/pyvenv-3.5) içerir.

  • küresel pip

python34u-pipVe python35u-pipIUS paketleri içerir /usr/bin/pip3.4ve /usr/bin/pip3.5sırasıyla. Bunlar, paketleri sistem site paketleri dizinine yüklemek için gayet iyi çalışır.


1
Neden birinin bu yanıtı olumsuz olarak değerlendireceğinden emin değilim. IUS'u dikkatimize sunduğunuz için teşekkür ederiz.
Dave

Olumsuz oyla ilgili olarak, EPEL yüklemelerindeki "bozuk" yorumu açıklamak faydalı olabilirdi. Ben de IUS'u bugün ilgili bir aramadan keşfettim ve burada cevapta bunlardan bahsedilmesi bir ek oyu hak ediyor.
Mark Edington

1
@MarkEdington bugzilla.redhat.com/show_bug.cgi?id=1263057 adresine bir bağlantı eklemek için cevabı düzenledim .
carlwgeorge

1
Bu sorun python34-3.4.5-4 ile düzeltildi
DrStrangepork

8
yum install python34-pip

pip3.4 install foo

Muhtemelen EPEL havuzlarının kurulu olması gerekecektir:

yum install -y epel-release


Bu yum paketi hangi depodan geliyor?
Jeff Widman

1
CentOS 7. *:yum install -y epel-release
Shen Yu

1
Yakın zamanda EPEL'e eklenmiş gibi görünüyor ve muhtemelen doğru cevap olmalı. Başkaları bunun onlar için de işe yaradığını onayladığında, bunu kabul edilen cevap yapacağım.
Jeff Widman

Benim için bir cazibe gibi çalışıyor. :)
Bill Cheng

Bu cevap bir VPS sunucusunda çalışırken yardımcı oldu
jking

3

2019 Güncellemesi

İlk başta easy_install denedim ama paketleri temiz ve sezgisel bir şekilde yüklemiyor. Ayrıca paketleri kaldırma zamanı geldiğinde, temizlenmesi gereken çok sayıda eser bıraktı.

sudo yum install epel-release
sudo yum install python34-pip
pip install package

Benim için işe yarayan çözüm miydi, sisteme pip olarak "pip3" kuruyor. Ayrıca standart devir yapısını kullanır, böylece sökülürken temizler. Sisteminizde hem python2 hem de python3 paket yöneticisi istiyorsanız hangi işlemi yapmanız gerekeceğinden emin değilim.


1
Çoğunlukla cPanel ile kullanılan bir VPS sunucusu çalıştırırken bunu yapmanın doğru yolu budur
jking

0

Bunu sadece easy_install (python kitaplığını paketlemek için bir Kurulum araçları) kullanarak yapmanın kolay bir yolu vardır.

  • Varsayım. Bunu yapmadan önce, Centos makinenize python kurulu olup olmadığını kontrol edin (en az 2.x).

  • Pip kurulum adımları

    1. Öyleyse easy_install kuralım,

      sudo yum install python-setuptools python-setuptools-devel

    2. Şimdi easy_install ile pip yapalım,

      sudo easy_install pip

Bu harika. Şimdi pipin var :)


0

Hangi python3 sürümünü yüklediğinizi bulun:

yum search pip

ve sonra en iyi eşleşmeyi kurun. Ortaya çıkan pip3.eg ismini bulmak için reqoquery kullanın

repoquery -l python36u-pip

Beni kullanmaya söyler pip3.6 yerine PIP3


0

Python34 ve pip'i kurmak için izlediğim adımlar aşağıdadır

yum update -y
yum -y install yum-utils
yum -y groupinstall development
yum -y install https://centos7.iuscommunity.org/ius-release.rpm
yum makecache
yum -y install python34u  python34u-pip
python3.6 -v
echo "alias python=/usr/bin/python3.4" >> ~/.bash_profile
source ~/.bash_profile
pip3 install --upgrade pip

# if yum install python34u-pip doesnt work, try 

curl https://bootstrap.pypa.io/get-pip.py | python

Pip3'ü curl kullanarak kurmak için yaptımcurl https://bootstrap.pypa.io/get-pip.py | python3
mRyan

-4

CentOS 7'de pipsürüm pip3.4şuradadır ve burada bulunur:

/usr/local/bin/pip3.4

2
/ Usr / local / bin içindeki dosyaların RHEL / CentOS tarafından paketlenmesi olası değildir. "Rpm -qf /usr/local/bin/pip3.4" komutunu başarıyla çalıştırabilir misiniz? Bu çalışırsa, çıktıdaki "rpm -qi <packagename>" ... paketleyici kimdir?
Jeff W
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.