python3 mac instalar from python macos installation pip osx-mavericks

python - instalar - pip install mac



instalación de pip/usr/local/opt/python/bin/python2.7: mal intérprete: No existe tal archivo o directorio (16)

No sé cuál es el trato, pero estoy atrapado siguiendo algunas soluciones de stackoverflow que no llegan a ninguna parte. ¿Puedes por favor ayudarme en esto?

Monas-MacBook-Pro:CS764 mona$ sudo python get-pip.py The directory ''/Users/mona/Library/Caches/pip/http'' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo''s -H flag. The directory ''/Users/mona/Library/Caches/pip/http'' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo''s -H flag. /tmp/tmpbSjX8k/pip.zip/pip/_vendor/requests/packages/urllib3/util/ssl_.py:90: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. For more information, see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning. Collecting pip Downloading pip-7.1.0-py2.py3-none-any.whl (1.1MB) 100% |████████████████████████████████| 1.1MB 181kB/s Installing collected packages: pip Found existing installation: pip 1.4.1 Uninstalling pip-1.4.1: Successfully uninstalled pip-1.4.1 Successfully installed pip-7.1.0 Monas-MacBook-Pro:CS764 mona$ pip --version -bash: /usr/local/bin/pip: /usr/local/opt/python/bin/python2.7: bad interpreter: No such file or directory


Pipa de fijación

Por este error:

~/Library/Python/2.7/bin/pip: /usr/local/opt/python/bin/python2.7: bad interpreter: No such file or directory`

La fuente de este problema es una mala ruta de Python codificada en pip (lo que significa que no se solucionará, por ejemplo, cambiando su $ PATH). Ese camino ya no está codificado en la última versión de pip, por lo que una solución que debería funcionar es:

pip install --upgrade pip

Pero, por supuesto, este comando usa pip, por lo que falla con el mismo error.

La forma de arrancarte de este lío:

  1. Ejecuta which pip
  2. Abre ese archivo en un editor de texto
  3. Cambie la primera línea de #!/usr/local/opt/python/bin/python2.7 a, por ejemplo, #!/usr/local/opt/python2/bin/python2.7 (tenga en cuenta el python2 en la ruta), o cualquier ruta a un intérprete de Python en funcionamiento en su máquina.
  4. Ahora, pip install --upgrade pip (esto sobrescribe su pirateo y hace que pip funcione en la última versión, donde se debe solucionar el problema del intérprete)

Fijación de virtualenv

Para mí, encontré este problema al tener primero el mismo problema de virtualenv:

~/Library/Python/2.7/bin/virtualenv: /usr/local/opt/python/bin/python2.7: bad interpreter: No such file or directory`

La solución aquí es correr

pip uninstall virtualenv pip install virtualenv

Si ejecutar ese comando da el mismo error desde pip, ver arriba.


Única solución en OSX y su variante.

ln -s /usr/local/bin/python /usr/local/opt/python/bin/python2.7


Cometí el mismo error al usar sudo para mi instalación. (Uy)

brew install python brew linkapps python brew link --overwrite python

Esto trajo todo de vuelta a la normalidad.


Como tenía instalado Python 2 y 3 en Mac OSX, estaba teniendo todo tipo de errores.

Solía ​​encontrar la ubicación de mi archivo python2.7 (/usr/local/bin/python2.7)

hash -r

Luego vinculé mi ubicación de instalación real de python2.7 con la que esperaba el script:

which python2.7


En caso de que ayude a alguien, la solución mencionada en esta otra pregunta funcionó para mí cuando pip dejó de funcionar hoy después de actualizarlo: Pip roto después de actualizar

Parece que es un problema cuando cambia una ubicación previamente almacenada en caché, por lo que puede actualizar la caché con este comando:

ln -s /usr/local/bin/python2.7 /usr/local/opt/python/bin/python2.7


En mi caso, decidí eliminar la instalación de Python homebrew de mi Mac ya que ya tenía otras dos versiones de Python instaladas en mi Mac a través de MacPorts. Esto causó el mensaje de error.

Reinstalar Python a través de brew resolvió mi problema.


Había usado home-brew para instalar 2.7 en OS X 10.10 y la nueva instalación no tenía los enlaces sym. corrí

brew link --overwrite python

como se menciona en Cómo vincular python en Homebrew? Y resolvió el problema.


La edición de la primera línea de este archivo me funcionó:

MBP-de-Jose:~ josejunior$ which python3

/usr/local/Cellar/python/3.7.3/bin/python3

MBP-de-Jose:~ josejunior$

antes de

#!/usr/local/opt/python/bin/python3.7

después

#!/usr/local/Cellar/python/3.7.3/bin/python3


Para simplificar la operación, podemos usar el siguiente comando para reinstalar la versión 2:

brew install python@2

Luego, en mi mac, se ve a continuación:

▶ python -V Python 2.7.10 ▶ python2 -V Python 2.7.14 ▶ python3 -V Python 3.6.5 ▶ pip2 -V pip 9.0.3 from /usr/local/lib/python2.7/site-packages (python 2.7) ▶ pip3 -V pip 9.0.3 from /usr/local/lib/python3.6/site-packages (python 3.6) ▶ pip --version pip 9.0.3 from /usr/local/lib/python2.7/site-packages (python 2.7)


Supongo que tiene dos instalaciones de python, o dos instalaciones de pip, una de las cuales se ha eliminado parcialmente.

¿Por qué usas sudo ? Idealmente, debería poder instalar y ejecutar todo desde su cuenta de usuario en lugar de usar root. Si combina la raíz y su cuenta local, es más probable que tenga problemas de permisos (por ejemplo, vea la advertencia que da sobre "el directorio principal no es propiedad del usuario actual").

¿Qué obtienes si ejecutas esto?

$ head -n1 /usr/local/bin/pip

Esto le mostrará qué pip binario de Python está tratando de usar. Si apunta a /usr/local/opt/python/bin/python2.7 , intente ejecutar esto:

$ ls -al /usr/local/opt/python/bin/python2.7

Si esto dice "No existe tal archivo o directorio", entonces pip está tratando de usar un binario de Python que se ha eliminado.

A continuación, intente esto:

$ which python $ which python2.7

Para ver la ruta del binario de Python que realmente está funcionando.

Dado que parece que pip se instaló con éxito en algún lugar, podría ser que /usr/local/bin/pip sea ​​parte de una instalación anterior de pip que está más arriba en la PATH . Para probar eso, puede intentar mover el binario pip no funciona de la siguiente manera (podría requerir sudo ):

$ mv /usr/local/bin/pip /usr/local/bin/pip.old

Luego intente ejecutar su comando pip --version nuevamente. Con suerte, recoge la versión correcta y se ejecuta con éxito.


Tengo el mismo problema Si ejecuto brew link --overwrite python2 . Todavía había zsh: /usr/local/bin//fab: bad interpreter: /usr/local/opt/python/bin/python2.7: no such file or directory .

cd /usr/local/opt/ mv python2 python

¡Resuelto! Ahora podemos usar la versión de python2 fabric.

=== 2018/07/25 actualizado

Hay una manera conveniente de usar la versión fab de python2 cuando su os python está vinculado a python3. .sh para su comando.

# fab python2 cd /usr/local/opt rm python ln -s python2 python # use the fab cli ... # link to python3 cd /usr/local/opt rm python ln -s python3 python

Espero que esto ayude.


Todo lo que necesita hacer es ... cerrar la ventana de terminal y volver a abrir una nueva para solucionar este problema.

El problema es que la nueva ruta de Python no se agrega a bashrc (la fuente o la nueva ventana de terminal ayudarían).


Tuve el mismo problema, virtualenv estaba apuntando a una vieja ruta de Python. Arreglar la ruta resolvió el problema:

$ virtualenv -p python2.7 env -bash: /usr/local/bin/virtualenv: /usr/local/opt/python/bin/python2.7: bad interpreter: No such file or directory $ which python2.7 /opt/local/bin/python2.7 # needed to change to correct python path $ head /usr/local/bin/virtualenv #!/usr/local/opt/python/bin/python2.7 <<<< REMOVED THIS LINE #!/opt/local/bin/python2.7 <<<<< REPLACED WITH CORRECT PATH # now it works: $ virtualenv -p python2.7 env Running virtualenv with interpreter /opt/local/bin/python2.7 New python executable in env/bin/python Installing setuptools, pip...done.


Tuve el mismo problema. Tengo instalados Python 2.7 y 3.6. Python 2.7 tenía virtualenv funcionando, pero después de instalar Python3, virtualenv siguió buscando la versión 2.7 y no pudo encontrarla. Haciendo pip install virtualenv instaló la versión Python3 de virtualenv.

Luego, para cada comando, si quiero usar Python2, usaría virtualenv --python=python2.7 somecommand


Tuve un problema similar. Básicamente, pip buscaba una ruta incorrecta (ruta de instalación anterior) o python. La siguiente solución funcionó para mí:

  • Verifiqué dónde está la ruta de Python (prueba which python )
  • Verifiqué la primera línea en el archivo pip ( /usr/local/bin/pip2.7 y /usr/local/bin/pip ). La línea debe indicar la ruta correcta a la ruta de Python. En mi caso, no lo hice. Lo corregí y ahora funciona bien.

sudo /usr/bin/easy_install pip

este comando me funcionó