Stavo giocando con brew install asciinema
e ha rotto la mia installazione python su macOS High Sierra (10.13.3 (17D47)).
Ma ora che sto reinstallando python per awscli tramite pip, non si comporta come mi aspetterei.
The Confusion:
Le istruzioni di installazione di awscli indicano "pip installa gli eseguibili nella stessa cartella che contiene l'eseguibile Python. Aggiungi questa cartella alla variabile PATH." Quando faccio ls -al $(which python)
, ottengo
lrwxr-xr-x 1 notbrain admin 35 Mar 6 10:35 /usr/local/bin/python -> ../Cellar/python/3.6.4_3/bin/python
Questo è quello che mi aspetterei dopo l'installazione di una birra. Quindi dovrei aggiungere /usr/local/Cellar/python/3.6.4_3/bin
al mio percorso, giusto?
Ma aws non viene installato lì, è in
~/Library/Python/3.6/bin
Aggiungendo alla confusione - lo shebang nello script di immissione di aws è impostato su:
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.
Che va bene, dal momento che è un link simbolico al python installato su brew 3.6. Ma perché così tante incoerenze? Dove si trova il pip che raccoglie il percorso ~/Library/Python
? Sembra che sia la cosa specifica di macOS.
C'è qualcosa nel mio sistema che è impostato in modo errato per causare questa discrepanza? Questa è una configurazione di installazione di pip che potrei cambiare per funzionare con python 3 installato in homebrew?
Installa passaggi
Ho rimosso tutto il python installato da brew e ho installato il sistema 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
Quindi una reinstallazione di 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