提交至CRAN的rKOMICS包含Bioconductor依赖,在Mac端安装失败如何解决
核心问题原因
Remotes是devtools/remotes包的专属扩展字段,CRAN官方不识别该字段,提交时必然触发字段拼写错误的报错,提交CRAN的版本必须删除该字段。- Mac环境下找不到
ComplexHeatmap依赖的核心原因是DESCRIPTION配置不符合CRAN对Bioconductor依赖包的规范,Windows可正常安装属于测试环境预安装了对应包、或预配置了Bioconductor源的巧合,和系统本身无关。
具体解决方案
- 第一步:删除DESCRIPTION文件中的
Remotes字段,完全清除该字段的相关内容。 - 第二步:正确配置DESCRIPTION的相关字段:
- 在
Depends或Imports字段中正常声明ComplexHeatmap依赖,写法和普通CRAN依赖包完全一致。 - 补充
biocViews:字段的有效内容,不能为空,可填写和包功能匹配的Bioconductor分类标签,例如做组学可视化可填写Visualization,Sequencing,Microarray等,只要是Bioconductor官方存在的分类标签即可。
- 在
- 第三步:在包的公开说明文档(README、 vignettes)中补充用户安装指引,告知用户如果直接调用
install.packages("rKOMICS")出现依赖缺失报错时,可先配置Bioconductor源再安装,参考命令如下:
也可直接通过BiocManager安装rKOMICS,BiocManager会自动处理跨CRAN、Bioconductor的依赖解析:# 先安装BiocManager并配置Bioconductor源 if (!require("BiocManager", quietly = TRUE)) install.packages("BiocManager") # 单独安装ComplexHeatmap依赖后再安装rKOMICS BiocManager::install("ComplexHeatmap") install.packages("rKOMICS")BiocManager::install("rKOMICS") - 第四步:提交CRAN前需在干净的R环境(未预安装ComplexHeatmap)中执行
R CMD check --as-cran完成预检查,当前CRAN官方检查环境已默认配置Bioconductor源,只要biocViews字段配置正确,不会触发依赖缺失的报错。
内容的提问来源于stack exchange,提问作者Manon Geerts
相关产品推荐
相关产品推荐

