【问题标题】:conda skeleton cran uses wrong version of Rconda 骨架 cran 使用了错误的 R 版本
【发布时间】:2017-12-11 17:28:11
【问题描述】:

我正在尝试从 CRAN 打包一些 R 包以在 conda 环境中使用,因为我将 Python 和 R 包的组合用于生物信息学管道。由于其他依赖关系,我需要将 R 保持在 3.3 版本

我用我想要的 Python 和 R 版本做了一个全新的环境:

$ conda create -n bioinfo python=3.6.3 r=3.3.2

root 环境中没有安装 R。然后我按照 conda 骨架的说明进行操作:

(bioinfo)$ conda skeleton cran rootSolve

(bioinfo)$ conda skeleton cran rootSolve

(bioinfo)$ conda build r-rootsolve

由于某种原因,这不断出现 R3.4 依赖项,即使根据 CRAN,rootSolve 包只需要 R>=2.01!这是哪里来的??

将安装以下新软件包: r-base: 3.4.2-haf99962_0

虽然构建包实际上并没有改变在我的环境中运行的 R 的版本,但包并没有加载。请问有什么想法吗?

R 版本 3.3.2 (2016-10-31) -- “真诚的南瓜补丁”

> library('rootSolve')
Error in dyn.load(file, DLLpath = DLLpath, ...) : 
  unable to load shared object '/usr/people/bioc1402/miniconda3/envs/bioinfo2/lib/R/library/rootSolve/libs/rootSolve.so':
  /usr/people/bioc1402/miniconda3/envs/bioinfo2/lib/R/library/rootSolve/libs/rootSolve.so: undefined symbol: R_ExternalPtrAddrFn
In addition: Warning message:
package ‘rootSolve’ was built under R version 3.4.2 
Error: package or namespace load failed for ‘rootSolve’

【问题讨论】:

  • 我之前一定在这里说过六次,但是混合 Conda 和 CRAN 似乎效果不太好。如果可以的话,我会尽量避免错过它们。
  • 好的,但是如果你想发布一个主要是 Python 包但涉及一些 R 的 Jupyter 笔记本工作流,你有什么建议?
  • 使用 R 和 CRAN 中的包。

标签: python r conda bioconductor


【解决方案1】:

显然这是一个错误,现已在 conda-build 3.1.3 中修复, https://github.com/conda/conda-build/issues/2562

感谢康达团队!

'conda build r-rootsolve --R=3.3.1' 现在可以与 conda 骨架生成的配方一起正常工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-16
    • 1970-01-01
    • 2022-11-16
    • 1970-01-01
    • 1970-01-01
    • 2017-12-07
    相关资源
    最近更新 更多