2010-12-07 8 views
46

pip install --upgrade pip çalışmıyor.python PIP'i bir pencere kutusundaki güncelleştirme hakkında herhangi bir fikrin var mı? Windows FS'nin beyin hasarlı olduğundan ve açık bir dosyayı silmenize izin vermediğinden,

ben güncellemeyi ve sonra farklı bir pip kaçan virtualenv benim ortamını ayarlama denedim, ama bu başarısız olur

: Ben başkası bir yolunu bulmuş umuyorum

(jm) E:\python\jm>c:\Python26\Scripts\pip install --upgrade pip 
Downloading/unpacking pip 
    Running setup.py egg_info for package pip 
    warning: no previously-included files matching '*.txt' found under directory 'docs\_build' 
    no previously-included directories found matching 'docs\_build\_sources' 
Installing collected packages: pip 
    Found existing installation: pip 0.7.1 
    Uninstalling pip: 
     Successfully uninstalled pip 
    Running setup.py install for pip 
    warning: no previously-included files matching '*.txt' found under directory 'docs\_build' 
    no previously-included directories found matching 'docs\_build\_sources' 
    Installing pip-script.py script to c:\Python26\Scripts 
    Installing pip.exe script to c:\Python26\Scripts 
    Installing pip.exe.manifest script to c:\Python26\Scripts 
    Installing pip-2.6-script.py script to c:\Python26\Scripts 
    Installing pip-2.6.exe script to c:\Python26\Scripts 
    Installing pip-2.6.exe.manifest script to c:\Python26\Scripts 
Exception: 
Traceback (most recent call last): 
    File "c:\Python26\lib\site-packages\pip-0.7.1-py2.6.egg\pip\basecommand.py", line 120, in main 
    File "c:\Python26\lib\site-packages\pip-0.7.1-py2.6.egg\pip\commands\install.py", line 165, in run 
    File "c:\Python26\lib\site-packages\pip-0.7.1-py2.6.egg\pip\req.py", line 1251, in install 
    File "c:\Python26\lib\site-packages\pip-0.7.1-py2.6.egg\pip\req.py", line 466, in commit_uninstall 
    File "c:\Python26\lib\site-packages\pip-0.7.1-py2.6.egg\pip\req.py", line 1549, in commit 
    File "c:\Python26\lib\shutil.py", line 216, in rmtree 
    rmtree(fullname, ignore_errors, onerror) 
    File "c:\Python26\lib\shutil.py", line 216, in rmtree 
    rmtree(fullname, ignore_errors, onerror) 
    File "c:\Python26\lib\shutil.py", line 221, in rmtree 
    onerror(os.remove, fullname, sys.exc_info()) 
    File "c:\Python26\lib\shutil.py", line 219, in rmtree 
    os.remove(fullname) 
WindowsError: [Error 5] Access is denied: 'c:\\users\\mark\\appdata\\local\\temp\\pip-gvsove-uninstall\\python26\\scripts\\pip.exe' 

Storing complete log in C:\Users\mark\AppData\Roaming\pip\pip.log 

(jm) E:\python\jm>dir c:\Users\mark\AppData\Local\temp\pip-gvsove-uninstall\python26\scripts 
Volume in drive C has no label. 
Volume Serial Number is 74E4-FE9F 

Directory of c:\Users\mark\AppData\Local\temp\pip-gvsove-uninstall\python26\scripts 

12/07/2010 11:32 AM <DIR>   . 
12/07/2010 11:32 AM <DIR>   .. 
05/14/2010 05:54 PM    7,168 pip.exe 
       1 File(s)   7,168 bytes 
       2 Dir(s) 22,824,603,648 bytes free 

(jm) E:\python\jm>del c:\Users\mark\AppData\Local\temp\pip-gvsove-uninstall\python26\scripts\pip.exe 

bunun etrafında. linux üzerinde Onun hiçbir sorun ....

+0

Hata alıyorum, ancak yükseltme aslında işe yaradı. – yoyo

+0

Bunun 3.5 yıl sonra en son Python 2.7.10 ve Windows 7.1.1 pip ile hala bir sorun olduğunu görmek çok güzel. Aşağıdaki önerilerin hiçbiri düzeltmez. Süper harika. – jarmod

+0

Benim için çalışan çözüm [burada] (http://stackoverflow.com/a/17687817/2412846). Kısacası: pip'i güncellemek için pip kullanıyorsunuz, fakat çalışıyorken, kendi üzerine yazamaz. Bir yere kopyalayın ve oradan çalıştırın. – davidhigh

cevap

92

easy_install -U pip

:-)

+2

Bu çok basitti. Easy_install'un virtualenvsleri anladığını bilmiyordum. Teşekkürler. – boatcoder

+1

Her virtualenv, kurulum programının yanı sıra easy_install'ın .exe yükleyicisini kullanacağı PIL gibi Windows'tan (tinkering olmaksızın) temiz kaynak yüklemeyen paketler için bilmeniz gereken pipoların yanı sıra kurulum düzenlerini de alır. pip bu yeteneği kazanıncaya kadar). –

13

[GÜNCELLEME 2015/11/15] Bu yayın eskimiş ve güncel değil. Bu setuptools den easy_install kullanılması gerekli değildir

python -m pip install -U pip setuptools 

: Güncel en iyi uygulama according to pip aşağıdaki kullanmaktır olduğunu. Pip güncellemek için önerilen prosedür, pip-installer sayfasından get-pip.py kullanmaktır.

yüklemek veya yükseltme pip, güvenli get-pip.py indirmek için.

Aşağıdakileri Bash shell numarasını msysgit's Git Bash adresinde kullanabilirsiniz.

[email protected] ~$ curl -L https://raw.githubusercontent.com/pypa/pip/master/contrib/get-pip.py | python 

yönlendirmeleri takip -L seçeneğini kullanın. Son zamanlarda, GitHub, ham içeriği için URL'yi değiştirdi, bu nedenle the old raw get-pip.py url, redirected ve pip web sitesinde the url was changed.

$ curl -L https://raw.githubusercontent.com/pypa/pip/master/contrib/get-pip.py | python 
    % Total % Received % Xferd Average Speed Time Time  Time Current 
           Dload Upload Total Spent Left Speed 
100 1309k 100 1309k 0  0 364k  0 0:00:03 0:00:03 --:--:-- 366k 
Downloading/unpacking pip from https://pypi.python.org/packages/py2.py3/p/pip/pip-1.5.6-py2.py3-none-any.whl#md5=4d4fb4b69df6731c7aeaadd6300bc1f2 
Installing collected packages: pip 
    Found existing installation: pip 1.5.4 
    Uninstalling pip: 
     Successfully uninstalled pip 
Successfully installed pip 
Cleaning up... 

Windows komut satırı için bu değişiklik yapabilirsiniz, ancak öncelikle, libcurl download a Windows binary from Curl yoksa: Başarılı, aşağıdaki görmelisiniz. En aşağıya kadar kaydırmak ve Günter Knauf's current official Win32 binary (currently 7.29) almak ve unzip etmek isteyeceksiniz. 64-bit'e karşı 32-bit olma konusunda endişelenme. Sadece tüm çanlar ve ıslıklarla (ssl, zlib, vs.) aldığınızdan emin olun. Şimdi muhtemelen c:\Users\<you>\Downloads curl indirdiğiniz klasöre gidin, ayıklanan klasörü açın, muhtemelen curl-7.29.0-rtmp-ssh2-ssl-sspi-zlib-idn-static-bin-w32, ve curl.exe bulmak gerekir. Yuppi! Şimdi bir windows kabuğunda, (myusername yerine kullanıcı adınız olacak) isteminden sonra indirilen curl.exe dosyasının yolunu kullanarak path\to\Curl\ dosyasını değiştirin.

C:\Users\myusername> path\to\Curl\curl.exe -kL https://bootstrap.pypa.io/get-pip.py | python 

Sen bukle certs olmadan güvenli GitHub pip sitesine erişmek için izin vermek -k seçeneği gerekir. Ayrıca, dosya kaydetme adımını kaydeden |, Windows borularından bahsetmek için Piotr Dobrogost'a teşekkürler. Zaten aşağıdaki iletiyi alırsınız pip en son sürümünü varsa

:

$ curl https://bootstrap.pypa.io/get-pip.py | python 
    % Total % Received % Xferd Average Speed Time Time  Time Current 
           Dload Upload Total Spent Left Speed 
100 1309k 100 1309k 0  0 369k  0 0:00:03 0:00:03 --:--:-- 371k 
Requirement already up-to-date: pip in c:\python27\lib\site-packages 
Cleaning up... 

Ayrıca virtualenvs içinde gayet güzel çalışıyor.

+1

Windows'ta borular kullanabilirsiniz. :) –

+0

Bu yükseltme yapmadı - "zaten gereksinimler güncel: pip" eğer pip yüklü ise. – remram

+0

@remram Terminal oturumunuzu gönderir misiniz? Bu benim deneyimim olmadı. Pipomu en yeni sürüme geçirmek için bu yöntemi birçok kez kullandım, ama anlattığın mesajı görmedim. Hala sorunların mı var? Sizinle sorun gidermek için mutluyum. –

49

Python'u ana yürütülebilir dosya olarak kullanarak, komut dosyasını bir komut dosyası olarak çalıştırın.

python -m pip install -U pip 
+5

Zaman değişti ve bence bunu yapmanın yeni yolu bu. – boatcoder

+3

Evet, bu, PIP geliştiricilerinin, bu hatayı ele aldıklarında tavsiye etmeye karar verdikleri şey gibi görünüyor: https://github.com/pypa/pip/issues/1299 – user9876

+0

Bu bir İyidir. – AskMe