conda,pip和virtualenv的依赖性问题

时间:2017-02-03 06:40:08

标签: pip virtualenv conda

我正在使用anaconda。在安装pip之前,我的Ubuntu16.04已经安装了virtualenv。我最近使用pip install virtualenv安装了coala。尝试在我的虚拟环境中安装virtualenv venv时,我执行了以下步骤。

  1. 使用source activate path/to/activate
  2. 创建新的虚拟环境
  3. 使用coala
  4. 激活环境
  5. 克隆pip3 install -e .存储库。
  6. 在存储库中运行coala
  7. 毕竟,我从 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,为了解决这个问题,我做了:

    1. pip install "yapf~=0.14.0"
    2. pip list
    3. 现在,当我查看pip时,我得到了预期的结果。但是,错误仍然存​​在。它仍然显示相同的依赖性错误。我无法理解发生了什么?哪个conda正在安装什么和哪里,virtualenv在幕后做什么,conda如何与constructor表现,最重要的是,为什么会出现此错误以及如何解决它?

2 个答案:

答案 0 :(得分:0)

首先创建一个与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文件夹中。

试着让我们知道。

答案 1 :(得分:0)

回答我自己的问题,我发现condavirtualenv不是齐头并进的。 condas能够创建自己的虚拟环境,如果使用condas,我们必须创建conda虚拟环境(请参阅this回答)。

我所做的是已卸载conda并使用virtualenv创建虚拟环境。我本可以做的就是卸载virtualenv并创建condas环境并在其中工作。