如何查找哪个软件包要求我的其他软件包降级

时间:2019-03-05 17:20:11

标签: python install conda conflicting-libraries

我正在处理一些旧的Python代码。多亏了this great answer的帮助,我才能够编写一个conda调用,该调用可以正确执行,并有望包含运行代码所需的所有软件包:

conda install IPython scipy numpy PIL scikit-image matplotlib tensorflow keras

但是,现在conda告诉我

The following packages will be DOWNGRADED:

  certifi                                 2018.11.29-py36_0 --> 2018.11.29-py27_0
  pip                                         19.0.3-py36_0 --> 19.0.3-py27_0
  python                                   3.6.8-haf84260_0 --> 2.7.15-h8f8e585_6
  setuptools                                  40.8.0-py36_0 --> 40.8.0-py27_0
  wheel                                       0.33.1-py36_0 --> 0.33.1-py27_0

什么事?! Python 2.7.15?没门。另外,项目README包含“指令”以使用Python 3.6运行代码,因此,理论上 代码应该与Python 3.6兼容。是否有办法准确了解哪个软件包和/或软件包组合导致了降级?

在您这么说之前,我知道我可以一次安装一个软件包,然后看看哪个是罪魁祸首。但是conda文档特别警告不要一次在一个环境中安装所需的软件包:

https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html#creating-an-environment-with-commands

  

同时安装此环境中所需的所有程序。一次安装1个程序可能会导致依赖关系冲突。


PS conda install命令的输出实际上比我在这里包括的要长得多。我只复制了DOWNGRADE部分,因为它是困扰我的唯一部分,但是当然,如​​果您愿意,我可以包括完整的多页输出。

0 个答案:

没有答案