Conda create:防止在环境创建期间安装某些包

时间:2021-06-22 04:58:33

标签: conda

我正在解决各种问题,试图构建一个能够运行一组通用软件包的环境,但是我在控制解决方案时遇到了一些麻烦。我发现自己希望能够排除某些软件包的安装。也就是说,如果涉及安装该软件包,我希望解决方案排除配置,并继续寻找不同的解决方案。

对于一些上下文,我发现 conda 提出的解决方案涉及安装 libgcc 和 libgcc-ng,我认为这会导致一些问题,我想阻止 conda 考虑包括libgcc-ng,我很确定不应该绝对必要。

作为“conda create”命令的一部分,我如何实现这一点?

1 个答案:

答案 0 :(得分:1)

一种选择是创建一个使用 a run_constrained requirement 的自定义包。一个简单的参考示例是 nomkl 包(请参阅 the Conda Forge meta.yaml),它通过包含以下内容来阻止安装 mkl 包:

requirements:
  run_constrained:
    - mkl <0.a0

也就是说,这个选项要求安装了mkl,它必须遵守这个约束。而且由于 mkl 的任何版本都无法满足此约束,因此它可以有效地修剪所有包含它的解决方案。