我安装了 Python、pip3 和 virtualenv,如下所示本 TensorFlow 指南:
brew install python
pip3 install -U virtualenv
然后我就可以创建一个虚拟环境:
virtualenv --system-site-packages -p python3 ./venv
然后我尝试使用
pip install --upgrade tensorflow
但它失败了因为 TensorFlow 尚不兼容 Python 3.7。所以我删除了 Python 3.7brew remove python
并从安装了 3.6.7安装程序。但是现在运行相同的virtualenv
命令失败:
$ 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
因此,virtualenv
即使删除后,可执行文件的链接也会列出最新的 Python 版本。
此外,还virtualenv
列出了brew
用户组,这也令人困惑:
$ ls -la /usr/local/bin/virtualenv
-rwxr-xr-x 1 user brew 232 29 Nov 17:06 /usr/local/bin/virtualenv
我尝试使用和卸载virtualenv
并pip
得到pip3
以下结果:
Skipping virtualenv as it is not installed.
我该如何修复此问题?
答案1
几个小时后,一个解决方案是使用virtualenv
再次安装pip
,然后使用 将其删除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
然后再次安装pip3
:
$ pip3 install virtualenv
Collecting virtualenv
...
Installing collected packages: virtualenv
Successfully installed virtualenv-16.1.0
注意使用pip3
,而不是pip
,不像此链接,指向TensorFlow。
现在可以创建虚拟环境了:
$ 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.
答案2
我创建了一个符号链接而不是复制。
brew install [email protected]
ln -s /usr/local/opt/[email protected]/bin/python3.7 /usr/local/opt/python/bin/python3.7
答案3
就我而言,我已经安装了 pipenv在 MacOS 上和:
brew install pipenv
它尝试使用 Python 3.6,而不是我实际拥有的 3.7。
所以我通过卸载解决了这个问题:
brew uninstall pipenv
...然后再次安装pip
:
pip3 install pipenv
答案4
尝试安装[电子邮件保护]通过 homebrew,然后cp
将该安装放入程序希望找到的目录中。
brew install [email protected]
cp -r /usr/local/opt/[email protected]/bin/python3.7 /usr/local/opt/python/bin/python3.7