conda、pip 和 virtualenv 的依赖问题
Dependency issue with conda, pip and virtualenv
我正在使用 conda(anaconda 2)
。在安装anaconda
之前,我的Ubuntu16.04已经安装了pip
。我最近使用 pip install virtualenv
安装了 virtualenv
。我尝试在我的虚拟环境中安装 coala
时执行了以下步骤。
- 使用
virtualenv venv
创建新的虚拟环境
- 使用
source activate path/to/activate
激活环境
- 克隆
coala
存储库。
- 运行
pip3 install -e .
在存储库中
在这一切之后,我从 coala
得到以下错误:
There is a conflict in the version of a dependency you have installed and the requirements of coala. This may be resolved by creating a separate virtual environment for coala or running `pip install "yapf~=0.14.0"`. Be aware that the latter solution might break other python packages that depend on the currently installed version.
我已经在 virtualenv
,所以我尝试按照命令安装 yapf
:pip install "yapf~=0.14.0"
。之后,当我检查我的pip list
时,它仍然显示yapf (0.15.2)
,为了解决这个问题,我做了:
pip uninstall yapf
pip install "yapf~=0.14.0"
现在,当我检查 pip list
时,我得到了想要的结果。但是,错误仍然存在。它仍然显示相同的依赖错误。我无法理解发生了什么? pip
正在安装什么和在哪里,conda
在幕后做什么,virtualenv
与 conda
的行为如何,最重要的是,为什么会出现此错误以及如何解决解决了吗?
首先创建一个属于 python3.x
的 virtualenv
模板
virtualenv -p {location of python3 version } {name of virtualenv folder}
像这样
virtualenv -p /usr/local/bin/python3 venv
然后激活它
source venv/bin/activate
然后 运行
pip install {你要使用的库}
pip install "yapf~=0.14.0"
这应该将 yapf 安装到 venv 文件夹中。
试着让我们知道。
回答我自己的问题时,我发现 conda
和 virtualenv
并不齐头并进。 condas
可以创建自己的虚拟环境,如果使用 condas
,我们必须创建一个 conda
虚拟环境(参见 this 回答)。
我所做的是卸载 conda
并使用 virtualenv
创建虚拟环境。我也可以做的是卸载 virtualenv
并创建 condas
环境并在其中工作。
我正在使用 conda(anaconda 2)
。在安装anaconda
之前,我的Ubuntu16.04已经安装了pip
。我最近使用 pip install virtualenv
安装了 virtualenv
。我尝试在我的虚拟环境中安装 coala
时执行了以下步骤。
- 使用
virtualenv venv
创建新的虚拟环境
- 使用
source activate path/to/activate
激活环境
- 克隆
coala
存储库。 - 运行
pip3 install -e .
在存储库中
在这一切之后,我从 coala
得到以下错误:
There is a conflict in the version of a dependency you have installed and the requirements of coala. This may be resolved by creating a separate virtual environment for coala or running `pip install "yapf~=0.14.0"`. Be aware that the latter solution might break other python packages that depend on the currently installed version.
我已经在 virtualenv
,所以我尝试按照命令安装 yapf
:pip install "yapf~=0.14.0"
。之后,当我检查我的pip list
时,它仍然显示yapf (0.15.2)
,为了解决这个问题,我做了:
pip uninstall yapf
pip install "yapf~=0.14.0"
现在,当我检查 pip list
时,我得到了想要的结果。但是,错误仍然存在。它仍然显示相同的依赖错误。我无法理解发生了什么? pip
正在安装什么和在哪里,conda
在幕后做什么,virtualenv
与 conda
的行为如何,最重要的是,为什么会出现此错误以及如何解决解决了吗?
首先创建一个属于 python3.x
的 virtualenv模板
virtualenv -p {location of python3 version } {name of virtualenv folder}
像这样
virtualenv -p /usr/local/bin/python3 venv
然后激活它
source venv/bin/activate
然后 运行
pip install {你要使用的库}
pip install "yapf~=0.14.0"
这应该将 yapf 安装到 venv 文件夹中。
试着让我们知道。
回答我自己的问题时,我发现 conda
和 virtualenv
并不齐头并进。 condas
可以创建自己的虚拟环境,如果使用 condas
,我们必须创建一个 conda
虚拟环境(参见 this 回答)。
我所做的是卸载 conda
并使用 virtualenv
创建虚拟环境。我也可以做的是卸载 virtualenv
并创建 condas
环境并在其中工作。