1 votos

MacOS High Sierra python3 / pip awscli instalar confusión ruta

Estaba jugando con brew install asciinema y rompió mi instalación de Python en MacOS High Sierra (10.13.3 (17D47)).

Pero ahora que estoy reinstalando Python para el awscli a través de pip, no está actuando como yo esperaría.

La confusión:

Las instrucciones de instalación de awscli dicen "pip instala los ejecutables en la misma carpeta que contiene el ejecutable de Python. Añade esta carpeta a tu variable PATH". Cuando hago ls -al $(which python) Me sale

lrwxr-xr-x  1 notbrain  admin  35 Mar  6 10:35 /usr/local/bin/python -> ../Cellar/python/3.6.4_3/bin/python

Que es lo que yo esperaría después de una instalación de cerveza. Así que debería añadir /usr/local/Cellar/python/3.6.4_3/bin a mi camino, ¿verdad?

Pero aws no se instala ahí, está en

~/Library/Python/3.6/bin

Añadiendo a la confusión - el shebang en la entrada de aws script se establece en:

17:11:40 notbrain@brian ~/Library/Python/3.6/bin
 cat aws
#!/usr/local/opt/python/bin/python3.6
# Copyright 2012 Amazon.com, Inc. or its affiliates. All Rights Reserved.

Lo cual está bien, ya que es un enlace simbólico al Python 3.6 instalado por Brew. ¿Pero por qué tantas inconsistencias? ¿Dónde está pip recogiendo el ~/Library/Python ¿camino? Parece que eso es algo específico de MacOS.

¿Hay algo en mi sistema que esté mal configurado para causar esta discrepancia? ¿Es una cosa de configuración de instalación de pip que podría cambiar para trabajar con Python 3 instalado en casa?

Pasos de la instalación

He eliminado todo el Python instalado por brew y conseguir el sistema instalado 2.7:

10:20:20 notbrain@brian ~
 python --version
Python 2.7.10

10:20:34 notbrain@brian ~
 which python
/usr/bin/python

10:20:42 notbrain@brian ~
 ll $(which python)
.rwxr-xr-x 66k root  1 Dec  2017 /usr/bin/python

10:21:13 notbrain@brian ~
 whereis python
/usr/bin/python

Luego una reinstalación de Python con homebrew:

10:26:17 notbrain@brian ~
 brew install python
==> Downloading https://homebrew.bintray.com/bottles/python-3.6.4_3.high_sierra.bottle.tar.gz
Already downloaded: /Users/notbrain/Library/Caches/Homebrew/python-3.6.4_3.high_sierra.bottle.tar.gz
==> Pouring python-3.6.4_3.high_sierra.bottle.tar.gz
==> /usr/local/Cellar/python/3.6.4_3/bin/python3 -s setup.py --no-user-cfg install --force --verbose --install-scripts=/usr/local/Cellar/python/3.6.4_3/bin --install-lib=/usr/local/lib/
==> /usr/local/Cellar/python/3.6.4_3/bin/python3 -s setup.py --no-user-cfg install --force --verbose --install-scripts=/usr/local/Cellar/python/3.6.4_3/bin --install-lib=/usr/local/lib/
==> /usr/local/Cellar/python/3.6.4_3/bin/python3 -s setup.py --no-user-cfg install --force --verbose --install-scripts=/usr/local/Cellar/python/3.6.4_3/bin --install-lib=/usr/local/lib/
==> Caveats
Pip, setuptools, and wheel have been installed. To update them
  pip3 install --upgrade pip setuptools wheel

You can install Python packages with
  pip3 install <package>

They will install into the site-package directory
  /usr/local/lib/python3.6/site-packages

See: https://docs.brew.sh/Homebrew-and-Python

Unversioned symlinks python, python-config, pip etc. pointing to python3,
python3-config, pip3 etc., respectively, have been installed.

If you need Homebrew's Python 2, `brew install python@2`.
==> Summary
  /usr/local/Cellar/python/3.6.4_3: 3,615 files, 56.

10:26:44 notbrain@brian ~
 which python
/usr/local/bin/python

Y finalmente, una instalación pip de awscli usando https://docs.aws.amazon.com/cli/latest/userguide/cli-install-MacOS.html#awscli-install-osx-pip

10:35:49 notbrain@brian ~
 pip install awscli --upgrade --user
Collecting awscli
  Using cached awscli-1.14.50-py2.py3-none-any.whl
Collecting docutils>=0.10 (from awscli)
  Using cached docutils-0.14-py3-none-any.whl
Collecting colorama<=0.3.7,>=0.2.5 (from awscli)
  Using cached colorama-0.3.7-py2.py3-none-any.whl
Collecting s3transfer<0.2.0,>=0.1.12 (from awscli)
  Using cached s3transfer-0.1.13-py2.py3-none-any.whl
Collecting botocore==1.9.3 (from awscli)
  Using cached botocore-1.9.3-py2.py3-none-any.whl
Collecting rsa<=3.5.0,>=3.1.2 (from awscli)
  Using cached rsa-3.4.2-py2.py3-none-any.whl
Collecting PyYAML<=3.12,>=3.10 (from awscli)
Collecting python-dateutil<3.0.0,>=2.1 (from botocore==1.9.3->awscli)
  Using cached python_dateutil-2.6.1-py2.py3-none-any.whl
Collecting jmespath<1.0.0,>=0.7.1 (from botocore==1.9.3->awscli)
  Using cached jmespath-0.9.3-py2.py3-none-any.whl
Collecting pyasn1>=0.1.3 (from rsa<=3.5.0,>=3.1.2->awscli)
  Using cached pyasn1-0.4.2-py2.py3-none-any.whl
Collecting six>=1.5 (from python-dateutil<3.0.0,>=2.1->botocore==1.9.3->awscli)
  Using cached six-1.11.0-py2.py3-none-any.whl
Installing collected packages: docutils, colorama, six, python-dateutil, jmespath, botocore, s3transfer, pyasn1, rsa, PyYAML, awscli
Successfully installed PyYAML-3.12 awscli-1.14.50 botocore-1.9.3 colorama-0.3.7 docutils-0.14 jmespath-0.9.3 pyasn1-0.4.2 python-dateutil-2.6.1 rsa-3.4.2 s3transfer-0.1.13 six-1.11.0

1voto

Corbin Supak Puntos 11

¿Lo has resuelto? También estoy algo atascado tratando de hacer funcionar awscli. Creo que se ha añadido a mi ruta porque veo esto $ echo ${PATH} usr/Library/Python/3.7/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

y veo los archivos ejecutables de aws en ese primer directorio de la ruta, pero no se encuentra ningún comando de aws cuando intento utilizarlo

EDIT: este es el agregado de ruta que finalmente funcionó: export PATH=~/Library/Python/3.7/bin:$PATH

He encontrado la solución aquí: https://dev.to/stevoperisic/installing-python3-pip-and-aws-cli-on-MacOS-sierra-3pea

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X