2015-09-16 22 views
58

CentOs 7 Epel şimdi Python 3.4 içerir. Bu garip, çünkü pip Python 3.4 ile varsayılan olarak dahil edilmelidir. which pip3 hiçbir şey bulamadı, ne de which pip.CentOS 7'de pip nasıl kurulur? Ben Python 3.4 başarıyla yükler olsa bile, bu çalıştığınızda <code>yum install python34</code></p> <p>Ancak, pip yüklemeye görünmüyor:

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

+2

muhtemelen ilgili: http://stackoverflow.com/questions/26576086/no-pip-binary-after-installing-python-3-4-2-on-centos-6-5 – cel

+0

Oraya baktım ama maalesef hiçbir şey yok. –

+0

Yani "pip34" ikili yok mu? Eh, her zaman yüklü ise python -m pip ile pip arayacaksınız. Eğer kurulu değilse 'python -m ensurepip' önyükleme için kullanılabilir. Sonraki komutu çağırmak için yükseltilmiş haklara ihtiyacınız olabilir. – cel

cevap

61

Pip3'ü yüklemeyi bulmanın en kolay yolu (python3 için).CentOS 7 x paketler) 'dir:

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

Sen Epel depo elbette, elden önce etkinleştirilmiş olması gerekir.

Artık python3.x için paketleri yüklemek için aşağıdaki gibi komutları çalıştırmak mümkün olmalıdır: Büyük olasılıkla Epel depoları yüklü ihtiyacınız olacağından

$ pip3 install foo 
+0

Bu kabul edilen yanıt olmalıdır. – maxschlepzig

+0

Bence bu her şeyi aklı başında tutarken en iyi çözümdür. Düzenlemeyi tavsiye etmiyorum __init__.py – laapsaap

+0

Anlaşılan en iyi çözüm bu varsayılan yanıtı –

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

Yoksa nedense curl yoksa: Bundan sonra

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

Eğer python34 içermez için

$ pip3 
+1

Bu hatayı aldım: zipimport.ZipImportError: verileri sıkıştırılamıyor; zlib mevcut değil ... bunun neden olduğunu biliyor musunuz? – SoldierCorp

+0

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

+0

Aynı zamanda @SoldierCorp ile aynı sorunla karşı karşıyayım ama 'zlib' yi yüklemeye çalıştığımda 'Paket zlib-1.2.3-29.el6.x86_64 zaten kurulu ve en son sürüm' ne oluyor? –

15

CentOS 7 yum paketi çalıştırmak mümkün olmalıdır ensurepip modülü, ancak bazı nedenlerden dolayı bu modülün bir parçası olması gereken setuptools ve pip dosyaları eksik. , Düzeltmek modülün _bundled dizinine (/lib64/python3.4/ensurepip/_bundled/) içine PyPI en son tekerlekleri indirmek için:

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

sonra indirilen sürümleri maç için __init__.py düzenleyin:

_SETUPTOOLS_VERSION = "18.4" 
_PIP_VERSION = "7.1.2" 

hangi python3.4 -m ensurepip çalışmaları sonrasında amaçlandığı gibi. Ensurepip örneğin, otomatik bir sanal ortam yaratmak her zaman çağrılır: Manuel yama gerekli değildir, böylece

pyvenv-3.4 py3 
source py3/bin/activate 

Umarım RH kırık Python3.4 yum paketi çözecektir.

CentOS 7 günü
+2

Çok beğeni topladı. Buna ihtiyaç duyanlar için https://pypi.python.org/simple/setuptools/ adresindeki kurulumlar için burada bulunan ve numaralı telefon için https://pypi.python.org/simple/pip/ – yoshiwaan

+0

__init__.py dosyası RPM doğrulama hatasına neden oluyor ve paket güncellemelerinde de üzerlerine yazılacak. – carlwgeorge

+1

Bu karışıklığa neden olmak için gerekçelerinin ne olduğunu bilmek isterim. Kendime iyi bir gerekçe olduğunu söylemeliyim ... – xenithorb

-4

, pip versiyonu pip3.4 ve burada yer almaktadır:

/usr/local/bin/pip3.4 
+2

/usr/local/bin'deki dosyaların RHEL/CentOS tarafından paketlenmesi olası değildir. "Rpm -qf /usr/local/bin/pip3.4" dosyasını başarıyla uygulayabilir misiniz? Eğer bu çalışırsa, "rpm -qi " çıkışta ... paketleyici kimdir? –

6

Aksine broken EPEL python34 packages kullanmak yerine, IUS repo etkinleştirebilirsiniz ve düzgün çalışması var. Sanal ortamlarda içinde

  • pip

ana python34u ve python35u IUS paketler, sanal ortamları önyükleme için paketlenmiş pip tekerlekleri ve Setuptools'u içeren pyvenv aracı (/usr/bin/pyvenv-3.4 veya /usr/bin/pyvenv-3.5) içerir.

  • küresel pip

python34u-pip ve python35u-pip IUS paketleri sırasıyla /usr/bin/pip3.4 ve /usr/bin/pip3.5 sayılabilir. Bunlar, sistem site paketleri dizinine paketleri kurmak için gayet iyi çalışıyor.

+1

Neden birinin bu cevabı reddettiğinden emin değil. IUS'u dikkatimize sunduğunuz için teşekkürler. – Dave

+0

İndirgemeyle ilgili olarak, EPEL kurulumlarındaki "kırılmış" yorumu açıklamak yararlı olacaktır. Ben de bugün IUS'yi ilgili bir aramadan keşfettim ve buradaki cevabın herhangi bir sözü burada bir hak kazanmayı hak ediyor. –

+1

@MarkEdington I, https://bugzilla.redhat.com/show_bug.cgi?id=1263057 adresine bir bağlantı eklemek için cevabı düzenledi. – carlwgeorge

5
yum install python34-pip 

pip3.4 install foo 

:

yum install -y epel-release

+0

Bu repo paketi hangi paketlerden geliyor? –

+1

CentOS 7. *: 'yum install -y epel-release' –

+0

Bu gibi sesler son zamanlarda EPEL'e eklendi ve muhtemelen doğru cevap haline gelmelidir. Diğerleri de bu çalışmaları onayladığından emin olduktan sonra kabul edilen cevabı yapacağım. –

0

Bunu, easy_install kullanarak (python librarie paketlemek için bir Setuptools) kullanarak bunu yapmanın kolay bir yolu vardır.

  • Varsayım. Bunu yapmadan önce Centos makinenize python yükleyip yüklemediğinizi kontrol edin (en az 2.x).

  • Pip takma adımları.

    1. Yani,

      sudo yum install python-setuptools python-setuptools-devel

    2. Şimdi easy_install ile Pip yapalım, easy_install kurarım sağlar

      sudo easy_install pip

    3. Büyük bulunuyor

. Şimdi muhtemelen pip ile ilgili