web-dev-qa-db-fra.com

comment utiliser pip avec pypy installé à partir du tableau de bord?

J'ai Ubuntu 11.10. J'ai apt-get installé pypy à partir de ce dépôt de tableau de bord: https://launchpad.net/~pypy l'ordinateur a déjà python dessus, et python a son propre pip. Comment puis-je installer pip pour pypy et comment puis-je l'utiliser différemment de celui de python?

28
user1098562

Citant (avec des changements mineurs) à partir d'ici le site Web de gyps :

Si vous souhaitez installer des bibliothèques tierces, le moyen le plus pratique est d'installer pip:

$ curl -O https://bootstrap.pypa.io/get-pip.py
$ ./pypy-2.1/bin/pypy get-pip.py
$ ./pypy-2.1/bin/pip install pygments  # for example

Pour l'utiliser correctement, vous souhaiterez peut-être ajouter un alias, par exemple ~/.bashrc:

alias pypy_pip='./pypy-2.1/bin/pip'

L'emplacement de l'exécutable pip réel doit être extrait de la sortie de pypy get-pip.py

40
xubuntix

Pour conserver une installation distincte, vous voudrez peut-être créer un virtualenv pour PyPy. Dans virtualenv, vous pouvez alors simplement exécuter pip install whatever et il l'installera pour PyPy. Lorsque vous créez un virtualenv, il installe automatiquement pip pour vous.

Sinon, vous devrez déterminer d'où PyPy importera et installer la distribution et le pip dans l'un de ces emplacements. programme d'installation de pip devrait le faire automatiquement lors de l'exécution avec PyPy. Soyez prudent avec cette option - si elle décide d'installer dans votre système Python, cela pourrait casser d'autres choses.

21
Thomas K

si vous voulez utiliser pip avec pypy:

pypy -m pip install [package]

pip est inclus avec pypy donc ciblez juste pip avec le drapeau -m

15
michael g

Le problème avec pip l'installation à partir de pypy (au moins lors de l'installation de pypy via apt-get) est qu'il est installé dans le chemin système:

$ whereis pip
pip: /usr/local/bin/pip /usr/bin/pip

Donc, après une telle installation, pypy pip est exécuté par défaut (/ usr/local/bin/pip) au lieu de python pip (/ usr/bin/pip) qui peut interrompre les mises à jour ultérieures de l'ensemble d'Ubuntu.

Le problème avec virtualenv est que vous devez vous rappeler où et quel env vous avez créé.

Une solution alternative pratique est conda (miniconda), qui gère non seulement les déploiements python: http://conda.pydata.org/miniconda.html . Comparaison de conda, pip et virtualenv: http://conda.pydata.org/docs/_downloads/conda-pip-virtualenv-translator. html

3
luart