前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ChAMP R包安装中的事故

ChAMP R包安装中的事故

作者头像
生信修炼手册
发布2020-05-11 10:52:44
2K0
发布2020-05-11 10:52:44
举报

ChAMP 包提供了完整的分析illumina甲基化芯片的pipeline, 和普通的Bioconductor 包的安装一样,代码只有简单的两行

source("http://bioconductor.org/biocLite.R")
biocLite("ChAMP")

我用的电脑是windows 操作系统,64位的R-3.4.3,安装过程中除了网速较慢,花费一点时间安装之外,并没有出现任何的问题。在加载的时候,却发生了如下的错误

错误: package or namespace load failed for 'ChAMP' in inDL(x, as.logical(local), as.logical(now), ...):
无法载入共享目标对象‘D:/work/R-3.4.3/library/mvtnorm/libs/x64/mvtnorm.dll’::
 `已达到了DLL数目的上限...

错误信息的意思很明显,达到了dll 文件的上限。那么默认的上限是多少呢?

google了好久,终于找到了解决方案。dll 文件就是windows操作系统下的动态链接库,在加载R包的过程中,如果这个R包有对应的动态链接库,那么就会加载进来。默认情况下最多允许加载100个动态链接库,当你需要加载的动态链接库超过了100时,就会出现上面的报错信息。

解决方案就是设置环境变量R_MAX_NUM_DLLS, 不管是什么操作系统,R语言对应的环境变量都可以在.Renviron文件中进行设置。

这个文件可以保存在任意目录下,文件中就一句话,内容如下

R_MAX_NUM_DLLS=500

500表示允许的最多的dll文件数目,设置好之后,重新启动R, 然后输入如下命令

normalizePath("d:/Documents/.Renviron", mustWork = FALSE)

第一个参数为.Renviron文件的真实路径,然后在加载ChAMP包就可以了

>> Package version 2.9.9 loaded <<
      ___ _      _   __  __ ___
     / __| |_   /_\ |  \/  | _ \
    | (__| ' \ / _ \| |\/| |  _/
     \___|_||_/_/ \_\_|  |_|_|  
     ------------------------------

出现上述的欢迎界面,就代表加载成功了。

ChAMP的功能确实是更加的强大和完整,同时也意味它的依赖包会特别的多,从而出现dll文件达到上限的错误。本文记录的解决方案,适合于任何操作系统,希望可以帮助到大家。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-03-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 生信修炼手册 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档