Я установил Python, pip3 и virtualenv, как показано ниже.это руководство для TensorFlow:
brew install python
pip3 install -U virtualenv
Затем мне удалось создать виртуальную среду с:
virtualenv --system-site-packages -p python3 ./venv
Затем я попробовал установить TensorFlow с помощью
pip install --upgrade tensorflow
но это не удалосьпоскольку TensorFlow пока несовместим с Python 3.7. Поэтому я удалил Python 3.7 brew 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
Попробуйте установить[email protected]через homebrew, а затем cp
скопировать эту установку в каталог, где программа ожидает ее найти.
brew install [email protected]
cp -r /usr/local/opt/[email protected]/bin/python3.7 /usr/local/opt/python/bin/python3.7