He instalado python usando homebrew y no puedo invocar pip desde bash. He intentado enmendar mi .bash_profile para incluir / usr / local / bin / python y / usr local / share / python en vano.
Cuando uso el comando bash:
find / -name 'pip'
Los únicos resultados que obtengo son:
/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
Ninguno de los cuales es un ejecutable.
Realmente no sé dónde apuntar mi $ PATH ya que no puedo encontrar el pip ejecutable. Cuando abro
/usr/local/lib/python2.7/site-packages/pip
o
/usr/local/Cellar/python/2.7.9/libexec/pip/pip
Encuentro los siguientes archivos:
__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
Ninguno de los cuales es un ejecutable.
Agradecería la ayuda de cualquier persona con más experiencia que yo.
Editar: probé los pasos sugeridos por Marco:
Aquí están los resultados de los pasos:
echo $ PATH muestra algunos directorios: / 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
que -a devuelve python: / usr / local / bin / python / usr / local / bin / python
no se devuelve nada por lo cual -a pip
- qué python devuelve: / usr / local / bin / python
no se devuelve nada por lo que pip
- ls -l $ (que python) devuelve un único directorio: lrwxr-xr-x 1 Ivan admin 33 17 may 08:59 / usr / local / bin / python -> ../Cellar/python/2.7.9/bin/ pitón
ls -l $ (que pip) devuelve varios, incluidos los archivos de python que mostré en mi publicación original

/usr/bin/python. Esto no es bueno, porque muchos scripts Python comienzan con#!/usr/bin/python. Si no hay python, recibirá mensajes de error como el suyo. Usebrew link --dry-run pythonpara verificar qué cambiará a sus enlaces cuando lo usebrew link --overwrite python. Obtendremos su pip correr ;-)brew link --overwrite --dry-run pythonpara ver qué archivos se sobrescribirán.Warning: The post-install step did not complete successfully You can try again using brew postinstall python. I tried thecomando brew postinstall python` y me llevó a unos pocos archivos a los que no tenía acceso, a los que me di cuenta. Ahora puedo usar pip! Gracias de nuevoThe post-install step did not complete successfullydebió aerror: could not delete '/usr/local/lib/python2.7/site-packages/pip/__init__.py': Permission denied. Eliminar manualmente ese archivo y luego ejecutarlobrew postinstall pythonnuevamente lo reparó.Si brew está administrando su instalación de python y pip ya no está enlazado (es decir, escribe "which pip" y no obtiene resultados) intente esto desde su directorio de inicio:
No estoy seguro si el método anterior funciona más (no funcionó en mi máquina).
Ahora confirme que realmente apunta a su instalación 2.7 con
pip --version(enumerará la versión principal de Python en la salida del directorio).fuente
Realmente no es una respuesta a la pregunta original, pero si alguien termina aquí porque su Homebrew instalado
python/pipya no funciona (es decir,pythonapunta al sistema python ypipno se encuentra), entonces la razón podría ser un cambio reciente (verano de 2017) en el manera Homebrew instala y vincula python.La solución es agregar lo siguiente a
~/.bash_profiley / o~/.zshrc:export PATH="$(brew --prefix)/opt/python/libexec/bin:$PATH"Esto hará que
pythonapunte a la versión de preparación de python y también le darápip. Consulte la sección de advertencias enbrew info pythony https://github.com/Homebrew/homebrew-core/issues/15746 para obtener más información.fuente
Por defecto Homebrew ofrece PIP a través de:
brew install python. Sin embargo, entonces tendrá dos Pythons instalados en su Mac, alternativamente puede instalarlo a través de:Para verificar qué archivos están instalados con su paquete Python, intente:
que debe consistir
pip.Después de la instalación, debe vincular los archivos instalados de su fórmula mediante:
que debería crear los enlaces simbólicos correctos (como
/usr/local/bin/pipapuntar a suCellar/python/2.?.?/bin/pip)Si tiene un problema de permiso, puede solucionarlo de la siguiente manera:
y asegúrese de que su usuario esté en el grupo de administración (
id -Gn $USER).Después de arreglar los permisos, no use
sudocuando use elbrewcomando.Luego vuelva a vincularlo nuevamente:
Para probar la ejecución en seco, desvincular y ejecutar:
brew link -n pythonpara ver los enlaces de los archivos quebrewse vincularían.Después de que el enlace sea exitoso, asegúrese de que su variable de sistema PATH tenga
/usr/local, si no, agregue:para usted
~/.bashrcarchivoSi tiene éxito,
pipdebería funcionar ahora.fuente
/usr/bin/pythoninstalado (que normalmente debería proporcionarse con OS X). Por lo tanto, intente como se sugiere, que es:,brew install python && brew link pythonluego agregue/usr/local/bina suPATH.brew install python && brew link pythonesté poniendo a Python/usr/bin. Lo estoy viendousr/local/bin, pero no estoy viendo el enlace simbólico que hay allí. También he desvinculado y vinculado Python, y nada cambia. Parece que el brew install and link no está poniendo las cosas donde deberíabrewno hace nada con/usr/bin, pero/usr/local/bin. Pruebe:brew unlink pythony ejecutar en seco:brew link -n pythonpara enumerar todos los archivos que deben estar vinculados y verificar sipipestá allí. Si es así, corre de nuevo sin-n.