Instalei Python, pip3 e virtualenv como emeste guia para TensorFlow:
brew install python
pip3 install -U virtualenv
Então consegui criar um ambiente virtual com:
virtualenv --system-site-packages -p python3 ./venv
Então tentei instalar o TensorFlow com
pip install --upgrade tensorflow
mas falhouporque o TensorFlow ainda não é compatível com Python 3.7. Então removi o Python 3.7 brew remove python
e instalei o 3.6.7 deum instalador. Mas executar o mesmo virtualenv
comando agora falha:
$ virtualenv --system-site-packages -p python3 ./venv
-bash: /usr/local/bin/virtualenv: /usr/local/opt/python/bin/python3.7: bad interpreter: No such file or directory
$ which python3
/Library/Frameworks/Python.framework/Versions/3.6/bin/python3
Portanto, o virtualenv
link para o executável lista a versão mais recente do Python, mesmo após a remoção.
Além disso, virtualenv
lista brew
o grupo de usuários, o que também é confuso:
$ ls -la /usr/local/bin/virtualenv
-rwxr-xr-x 1 user brew 232 29 Nov 17:06 /usr/local/bin/virtualenv
Eu tentei desinstalar virtualenv
com ambos pip
e pip3
obtive:
Skipping virtualenv as it is not installed.
Como posso corrigir esse problema?
Responder1
Depois de algumas horas, uma solução foi instalar virtualenv
novamente com pip
e removê-lo com pip
:
$ ls -la /usr/local/bin/virtualenv
-rwxr-xr-x 1 user brew 232 29 Nov 17:06 /usr/local/bin/virtualenv
$ pip install virtualenv
...
$ pip uninstall virtualenv
...
$ which virtualenv
$ ls -la /usr/local/bin/virtualenv
ls: /usr/local/bin/virtualenv: No such file or directory
E então instale-o novamente com pip3
:
$ pip3 install virtualenv
Collecting virtualenv
...
Installing collected packages: virtualenv
Successfully installed virtualenv-16.1.0
Observe o uso de pip3
, e não pip
, ao contrárioesse link, apontado porTensorFlow.
E agora a criação do ambiente virtual funciona:
$ virtualenv --system-site-packages -p python3 ./venv
Running virtualenv with interpreter /Library/Frameworks/Python.framework/Versions/3.6/bin/python3
Using base prefix '/Library/Frameworks/Python.framework/Versions/3.6'
New python executable in ~/venv/bin/python3
Also creating executable in ~/venv/bin/python
Installing setuptools, pip, wheel...
done.
Responder2
Criei um link simbólico em vez de copiar.
brew install [email protected]
ln -s /usr/local/opt/[email protected]/bin/python3.7 /usr/local/opt/python/bin/python3.7
Responder3
No meu caso, eu instalei o pipenvno MacOScom:
brew install pipenv
Ele estava tentando usar o Python 3.6 em vez do 3.7 que eu realmente tinha.
Então resolvi o problema desinstalando:
brew uninstall pipenv
... então instalando novamente com pip
:
pip3 install pipenv
Responder4
Tente instalar[e-mail protegido]via homebrew e depois cp
colocar essa instalação no diretório que o programa espera encontrá-la.
brew install [email protected]
cp -r /usr/local/opt/[email protected]/bin/python3.7 /usr/local/opt/python/bin/python3.7