构建conda包时未定义的cran_mirror

时间:2018-05-04 10:51:37

标签: r conda

我正在尝试使用骨架在conda中构建一个R包。在准备好所需包的环境后,执行以下命令

$ conda skeleton cran arules
$ conda build r-arules

生成配方文件,一切似乎都正常,但构建命令导致以下错误:

Adding in variants from internal_defaults
INFO:conda_build.variants:Adding in variants from internal_defaults
Attempting to finalize metadata for r-arules
INFO:conda_build.metadata:Attempting to finalize metadata for r-arules
Undefined Jinja2 variables remain (['cran_mirror', 'cran_mirror']). 
Please enable source downloading and try again.

我一直在阅读文档并在网上搜索此问题的解决方案,但没有成功,我不知道还能做什么。 ¿有什么想法吗?

备注:我已开始关注本教程:http://ihrke.github.io/conda.html但之后我还检查了官方conda documentation on building packages和其他相关文档。我更新了conda(= 4.5.2),以及conda-build(= 3.10.1)

1 个答案:

答案 0 :(得分:0)

我终于找到了如何以两种不同的方式解决我的问题:

最直接的解决方案是在创建recipse时使用 - cran-url 选项指定一个曲目网址,如下所示:

$ conda skeleton cran arules --cran-url https://mran.microsoft.com/snapshot/2018-01-01/

另一种解决方案是使用 yaml 创建 conda-build 配置文件。在该文件中,我们指定了镜像镜像,例如:

  

cran_mirror:https://mran.microsoft.com/snapshot/2018-01-01/

然后,我们应该在创建配方时使用选项 -m

$ conda skeleton cran arules -m path/to/conda_build_config.yam

PD:根据pull request

中的评论,似乎 conda-build 的下一个版本中会有一个默认的镜像镜像