RStudio用devtools安装GitHub包phenoptr提示SystemRequire行错误如何解决
问题根因
报错核心是R包读取工具无法正确解析phenoptr包根目录下DESCRIPTION文件中的SystemRequirements字段内容,触发格式校验失败,和安装来源(GitHub/本地压缩包)无关,因此两种安装方式都会触发相同报错。常见触发场景有两个:
- 本地安装依赖的
desc包版本过旧,无法兼容phenoptr中SystemRequirements字段的换行/特殊字符书写格式 - 部分新版本devtools对
SystemRequirements字段的校验规则过于严格,匹配不上该包的非标准化字段写法
可行解决方案
方案1:跳过系统依赖校验直接安装
安装时添加参数关闭SystemRequirements字段校验,无需修改包文件即可完成安装:
- GitHub安装命令:
devtools::install_github("akoyabio/phenoptr", dependencies = TRUE, system_requirements = FALSE) - 本地压缩包安装命令:
devtools::install_local("D:/phenoptr-master.zip", dependencies = TRUE, system_requirements = FALSE)
注意:Windows系统下本地路径的斜杠需要替换为正斜杠/,或者用双反斜杠\\,否则会触发路径识别错误
方案2:手动修改DESCRIPTION文件修复格式
如果需要保留系统依赖校验逻辑,可以手动修改包文件修复格式问题:
- 把
phenoptr-master.zip解压到本地文件夹,找到根目录下的DESCRIPTION文件,用纯文本编辑器打开 - 找到以
SystemRequirements开头的行,删除该行及后续所有属于该字段的换行内容,保存修改 - 运行命令从修改后的文件夹安装:
devtools::install_local("D:/phenoptr-master", dependencies = TRUE)
方案3:调整依赖包版本适配规则
通过升级或降级核心解析包的版本,兼容该包的字段书写格式:
- 先升级核心解析包到最新版后再尝试安装:
install.packages(c("desc", "pkgbuild", "devtools")) devtools::install_github("akoyabio/phenoptr")
- 如果升级后仍报错,可以降级
desc包到1.4.1版本再尝试,适配该包的字段解析规则。
内容的提问来源于stack exchange,提问作者Wang Mengfei
相关产品推荐
相关产品推荐

