web-dev-qa-db-fra.com

Impossible de mettre à niveau pip

Je suis nouveau sur Linux et Ubuntu.

J'essayais de mettre à niveau pip, mais j'ai rencontré ce problème ...

$ Sudo pip install --upgrade pip
Cannot fetch index base URL https://pypi.python.org/simple/
Downloading/unpacking pip from https://pypi.python.org/packages/py2.py3/p/pip/pip-7.1.0-py2.py3-none-any.whl#md5=b108384a762825ec20345bb9b5b7209f
  Downloading pip-7.1.0-py2.py3-none-any.whl (1.1MB): 1.1MB downloaded
Installing collected packages: pip
  Found existing installation: pip 1.5.4
    Not uninstalling pip at /usr/lib/python2.7/dist-packages, owned by OS
Successfully installed pip
Cleaning up...

Une idée pourquoi?

19
Spencer Lee

Les noms apt et PyPI utilisent deux mécanismes différents.

Dans les dépôts d'Ubuntu, de nombreux modules de python sont disponibles sous forme de paquetages, mais ils ne sont pas beaucoup plus nombreux que PyPI (Le Python Index de paquet) . Pour rester cohérent sur la mise à niveau d'un paquet, vous devez prendre en compte la méthode que vous avez initialement utilisée pour l'installer.

Ainsi, si vous avez installé un package (module) à partir de PyPI en utilisant pip, vous devez utiliser pip pour mettre à niveau le package à partir de PyPI (y compris pip lui-même). D'autre part, si vous avez utilisé le système apt pour installer un module (en tant que package), vous devez utiliser apt pour le mettre à jour à nouveau.

En un mot, exécutez ce qui suit pour mettre à niveau python-pip vers la dernière version:

Sudo apt-get install python-pip
4
heemayl

Essayez de l'installer avec easy_install:

easy_install -U pip
22
NamPNQ

J'ai eu le même problème pendant longtemps et j'ai trouvé la solution aujourd'hui. Lorsque vous installez pip via python-pip, vous téléchargez à partir du serveur Linux obsolète. Vous devriez télécharger depuis le serveur python. Pour résoudre ce problème, procédez comme suit:

Sudo apt-get purge pip
Sudo apt-get install python-setuptools
Sudo apt-get install python-dev 
Sudo easy_install pip 
pip install pip --upgrade 
7
user730924

Cela est dû à un conflit entre une version de pip fournie par un package système, telle que python-pip, et une version fournie par PyPI via pip lui-même.

Pour résoudre ce problème, supprimez simplement python-pip avec Sudo apt-get purge python-pip.

Si vous aviez déjà utilisé l'ancienne version de pip pour installer une version plus récente, la version mise à jour devrait rester dans /usr/local/bin. Sinon, vous pouvez installer la version la plus récente de Pip à partir de zéro avec:

curl --silent --show-error --retry 5 https://bootstrap.pypa.io/get-pip.py | Sudo python2.7
2
Cerin

En fait, vous pouvez éditer votre script 'pip':

de la racine:

$ which pip  # -> prints 'pip' location

$ nano `which pip` # -> open with your editor, note the backticks!

remplacez le __requires__ par la dernière version de votre pip, par exemple:

__requires__ = 'pip==7.1.2'

que la ligne d'édition avec l'appel 'load_entry_point' à:

load_entry_point(__requires__, 'console_scripts', 'pip')()

et:

$pip -V
pip 7.1.2 from /usr/local/lib/python2.7/dist-packages (python 2.7)

aussi, je dois mettre à jour mon paquet setuptools, pour installer quelques paquets.

2
s0rg

Utilisez ce lien pour mettre à jour. Fondamentalement:

  1. Télécharger le fichier get-pip.py
  2. lancer python get-pip.py
1
Manish

J'ai rencontré ce problème lorsque je travaillais sur une machine distante dans laquelle j'étais ssh'd. Je venais d'installer python 3, et je ne pouvais pas obtenir de mise à niveau de pip, même si j'avais tenté de la mettre à niveau à la fois via pip AND apt-get.

La déconnexion du serveur distant et la reconnexion ont résolu le problème.

1

Essayez d’exécuter Sudo -H pip3 install --upgrade pip pour mettre à niveau votre pip3 (pour Python 3). Inversement, vous pouvez utiliser Sudo -H pip2 install --upgrade pip pour mettre à niveau pip également (pour Python 2).

1
BhushanDhamale

Je ne suis qu'un débutant, donc je ne suis pas sûr mais c'est probablement quelque chose qui est lié aux différences entre python 2 et 3. Je pense que ce n'est pas nécessaire d'être un superutilisateur mais vous pouvez le faire facilement en utilisant pip3 au lieu de pip également pour mettre à niveau pip: pip3 install --upgrade pip

0
NBee

Si python-pip est installé à partir de référentiels apt avec l'utilisateur Sudo - exécutez Sudo -H install --upgrade pip, de même pour l'installation de modules PIP.

Voici la sortie de ma console le 16.04

..... Successfully installed requests
You are using pip version 8.1.1, however version 9.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
:~$ pip install --upgrade pip
Collecting pip
  Downloading pip-9.0.1-py2.py3-none-any.whl (1.3MB)
    100% |████████████████████████████████| 1.3MB 672kB/s 
Installing collected packages: pip
Successfully installed pip-8.1.1
You are using pip version 8.1.1, however version 9.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
:~$ Sudo -H pip install --upgrade pip
Collecting pip
  Downloading pip-9.0.1-py2.py3-none-any.whl (1.3MB)
    100% |████████████████████████████████| 1.3MB 692kB/s 
Installing collected packages: pip
  Found existing installation: pip 8.1.1
    Not uninstalling pip at /usr/lib/python2.7/dist-packages, outside environment /usr
Successfully installed pip-9.0.1
:~$ 

voir aussi Quel est l'indicateur -H pour pip? https://stackoverflow.com/questions/28619686/what-is-the-h-flag-for-pip

0
user115639

J'ai eu un problème similaire sur la mise à niveau de pip 9.0.3 à la version 18.0.

Ainsi, lors de la mise à niveau, la première désinstallation se produit, puis la dernière version est installée. Cependant, j'ai trouvé que lors de votre première tentative, il est écrit "pip-9.0.3 désinstallé avec succès"

Lors des tentatives suivantes, nous obtenons la même erreur. C'est parce que le pip-9.0.3 est désinstallé. Comme pour la réponse acceptée, j’ai installé pip en tant qu’administrateur dans mon système Windows 10, j’ai eu la dernière version et tout s’est bien passé.

J'espère que cela t'aides.

0
Eswar