J'ai installé python en utilisant homebrew et je ne peux pas appeler pip depuis bash. J'ai essayé de modifier mon .bash_profile pour inclure / usr / local / bin / python et / usr local / share / python en vain.
Lorsque j'utilise la commande bash:
find / -name 'pip'
Les seuls résultats que j'obtiens sont:
/Library/Python/2.7/site-packages/pip-1.5.6-py2.7.egg/pip
/Users/Ivan/Library/Caches/pip
/Users/Ivan/Library/Logs/pip
/usr/local/Cellar/python/2.7.9/libexec/pip
/usr/local/Cellar/python/2.7.9/libexec/pip/pip
/usr/local/lib/python2.7/site-packages/pip
Aucun n'est un exécutable.
Je ne sais pas vraiment où pointer mon $ PATH car je ne trouve pas l'exécutable pip. Quand j'ouvre
/usr/local/lib/python2.7/site-packages/pip
ou
/usr/local/Cellar/python/2.7.9/libexec/pip/pip
Je trouve les fichiers suivants:
__init__.py commands operations
__init__.pyc compat pep425tags.py
__main__.py download.py pep425tags.pyc
__main__.pyc download.pyc req
_vendor exceptions.py status_codes.py
basecommand.py exceptions.pyc status_codes.pyc
basecommand.pyc index.py utils
baseparser.py index.pyc vcs
baseparser.pyc locations.py wheel.py
cmdoptions.py locations.pyc wheel.pyc
cmdoptions.pyc models
Aucun n'est un exécutable.
J'apprécierais l'aide de toute personne ayant plus d'expérience que moi.
Edit: j'ai essayé les étapes suggérées par Marco:
Voici les résultats des étapes:
echo $ PATH affiche quelques répertoires: / usr / local / bin: / usr / local / mysql / bin: / usr / bin: / bin: / usr / sbin: / sbin: / usr / local / bin: / usr / texbin: / opt / X11 / bin: / usr / local / mysql / bin
qui -a python renvoie: / usr / local / bin / python / usr / local / bin / python
rien n'est retourné pour lequel -a pip
- quel python renvoie: / usr / local / bin / python
rien n'est retourné pour quel pip
- ls -l $ (quel python) renvoie un seul répertoire: lrwxr-xr-x 1 Ivan admin 33 17 mai 08:59 / usr / local / bin / python -> ../Cellar/python/2.7.9/bin/ python
ls -l $ (quel pip) renvoie plusieurs, y compris les fichiers python que j'ai montrés dans mon post d'origine
/usr/bin/python
. Ce n'est pas bon, car de nombreux scripts Python commencent par#!/usr/bin/python
. S'il n'y a pas de python, vous obtenez des messages d'erreur comme le vôtre. Utilisezbrew link --dry-run python
pour vérifier ce qui sera modifié pour vos liens lors de l'utilisationbrew link --overwrite python
. Nous allons faire fonctionner votre pip ;-)brew link --overwrite --dry-run python
pour voir quels fichiers seront remplacés.Warning: The post-install step did not complete successfully You can try again using brew postinstall python. I tried the
commande brew postinstall python` et cela m'a conduit à quelques fichiers auxquels je n'avais pas accès et que je me suis effrayé. Maintenant, je peux utiliser pip! Merci encoreThe post-install step did not complete successfully
dû àerror: could not delete '/usr/local/lib/python2.7/site-packages/pip/__init__.py': Permission denied
. La suppression manuelle de ce fichier, puis sa réexécution l'ontbrew postinstall python
corrigé.Si brew gère votre installation python et que pip n'est plus lié par un lien symbolique (c'est-à-dire que vous tapez "quel pip" et n'obtenez aucun résultat), essayez ceci à partir de votre répertoire personnel:
Je ne sais pas si l'ancienne méthode fonctionne plus (elle ne fonctionnait pas sur ma machine).
Confirmez maintenant qu'il pointe bien vers votre installation 2.7 avec
pip --version
(il listera la version principale de python dans la sortie du répertoire).la source
Pas vraiment une réponse à la question d'origine, mais si quelqu'un se retrouve ici parce que son Homebrew installé
python/pip
ne fonctionne plus (c'est-python
à- dire qu'il pointe vers le système python etpip
n'est pas trouvé), la raison pourrait être un changement récent (été 2017) dans le Homebrew installe et relie python.La solution consiste à ajouter les éléments suivants à
~/.bash_profile
et / ou~/.zshrc
:export PATH="$(brew --prefix)/opt/python/libexec/bin:$PATH"
Cela
python
indiquera la version brew de python et vous donnera égalementpip
. Voir la section des mises en garde sousbrew info python
et https://github.com/Homebrew/homebrew-core/issues/15746 pour plus d'informationsla source
Par défaut Homebrew fournit pip via:
brew install python
. Cependant, vous aurez alors deux Pythons installés sur votre Mac, vous pouvez également l'installer via:Pour vérifier quels fichiers sont installés avec votre package Python, essayez:
qui devrait consister
pip
.Après l'installation, vous devez créer un lien symbolique entre les fichiers installés de votre formule en:
qui devrait créer les bons liens symboliques (comme
/usr/local/bin/pip
pointer vers votreCellar/python/2.?.?/bin/pip
)Si vous avez un problème d'autorisation, vous pouvez le résoudre en:
et assurez-vous que votre utilisateur est dans le groupe admin (
id -Gn $USER
).Après avoir corrigé les autorisations, ne les utilisez pas
sudo
lorsque vous utilisez labrew
commande.Puis reconnectez-le à nouveau:
Pour tester le dry-run, dissocier et exécuter:
brew link -n python
pour voir les liens des fichiers quibrew
lieraient.Une fois la liaison réussie, assurez-vous que votre variable système PATH a
/usr/local
, sinon, ajoutez:à votre
~/.bashrc
dossier.En cas de succès, vous
pip
devriez travailler maintenant.la source
/usr/bin/python
installé (qui devrait normalement être fourni avec OS X). Veuillez donc essayer comme suggéré, c'est-à-brew install python && brew link python
dire:, puis ajoutez/usr/local/bin
à votrePATH
.brew install python && brew link python
met du python/usr/bin
. Je le voisusr/local/bin
, mais je ne vois pas le lien symbolique vers pip là-bas. J'ai également dissocié et lié python, et rien ne change. Il semble que l'installation et le lien de brassage ne mettent pas les choses là où elles devraientbrew
ne fait rien avec/usr/bin
, mais/usr/local/bin
. Essayez:brew unlink python
et dry-run:brew link -n python
pour répertorier tous les fichiers qui doivent être liés et vérifier s'ilspip
existent. Si oui, exécutez à nouveau sans-n
.