conda环境无法创建新环境

31
尝试创建viper工具的新环境时,我在解决软件包规范时遇到了困难。我已经从他们的网站下载并解压了该工具。按照说明,我正在尝试创建名为viper的conda环境。使用以下命令:
conda env create -f environment.yml -n viper

如上所述,该过程被卡住了。

因此,我尝试了

conda create --file environment.yml -n viper

但是我遇到了错误

CondaValueError: could not parse 'name: viper' in: environment.yml

我的 environment.yml 文件的头部如下所示

 name: viper
 channels: #!!python/tuple
     - bioconda
     - conda-forge
     - defaults
 dependencies:
     - ...

我做错了什么?

我的conda版本如下:

 $ conda info
 Current conda install:

           platform : linux-64
      conda version : 4.3.30
   conda is private : False
  conda-env version : 4.3.30
conda-build version : not installed
     python version : 3.6.3.final.0
   requests version : 2.18.4
   root environment : /home/yeroslaviz/miniconda3  (writable)
default environment : /home/yeroslaviz/miniconda3
   envs directories : /home/yeroslaviz/miniconda3/envs
                      /home/yeroslaviz/.conda/envs
      package cache : /home/yeroslaviz/miniconda3/pkgs
                      /home/yeroslaviz/.conda/pkgs
       channel URLs : https://repo.continuum.io/pkgs/main/linux-64
                      https://repo.continuum.io/pkgs/main/noarch
                      https://repo.continuum.io/pkgs/free/linux-64
                      https://repo.continuum.io/pkgs/free/noarch
                      https://repo.continuum.io/pkgs/r/linux-64
                      https://repo.continuum.io/pkgs/r/noarch
                      https://repo.continuum.io/pkgs/pro/linux-64
                      https://repo.continuum.io/pkgs/pro/noarch
        config file : None
         netrc file : None
       offline mode : False
         user-agent : conda/4.3.30 requests/2.18.4 CPython/3.6.3 Linux/4.4.0-72-generic debian/stretch/sid glibc/2.23    
            UID:GID : 1000:1000
谢谢。

1
我正在查看该工具的environment.yml,它非常不充分,即许多软件包缺乏明确的版本,而主要的核心软件(例如Python和R)只有下限。我想请求作者发送一个包括所有版本的YAML文件。否则,结合这是大约2016年的事实,我认为搜索空间过于庞大,存在问题。 - merv
你可以使用以下命令创建一个名为myenv的Python 3.8环境:conda env create --file environment.yml -n myenv python=3.8(顺便提一下,你也可以使用conda env export > environment.yml命令创建环境文件,它会自动添加pip依赖项)。 - Charlie Parker
这已经关闭了,但谢谢。 - Assa Yeroslaviz
1个回答

70

conda create --file environment.yml -n viper 无法正常工作。这个命令试图将environment.yml 中的每一行解析为软件包名。

您应该使用 conda env create --file environment.yml -n viper

只需耐心等待冲突解决即可。


谢谢你的回答。我已经等了,终于来了 :-) - Assa Yeroslaviz
1
不要忘记指定Python版本,例如:conda env create --file environment.yml -n myenv python=3.8(顺便说一下,您可以使用conda env export > environment.yml创建环境,它会自动添加pip依赖项)。 - Charlie Parker
10
conda env创建YAML格式,却没有为conda create创建,这是谁的好主意?请问需要翻译什么其他的吗? - user5359531
@user5339351,我认为那是Jo。 - Diego-MX
2
只是一个小建议,不要使用 conda env export > environment.yml,因为这会创建一个通常在系统之间不可移植的巨大的 environment.yml。通常情况下,conda env export --from-history > environment.yml 更好。使用 mamda 而不是 conda 更好。 - KeithWM

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接