R CMD 检查完整的检查需要“checkbashisms”脚本

问题描述 投票:0回答:1

我正处于使用 RStudio 编写包的早期阶段。基本包结构是使用 William Landau 的

instantiate
包创建的。 当我单击
Check
按钮时,一切似乎都很顺利,但我收到两个警告,其中一个完整显示:

检查顶级文件...警告完整的检查需要 “checkbashisms”脚本。请参阅“配置和清理”部分 “编写 R 扩展”手册。

(另一个警告完全是关于其他事情的)。

我看到了这个答案:[https://stackoverflow.com/questions/63698128/r-package-check-warning-a-complete-check-needs-the-checkbashisms-script] 但还是不明白该怎么办。我不知道

$PATH
是什么,也不知道如何添加一些东西。

我还看到了这个答案: [ https://stat.ethz.ch/pipermail/r-package-devel/2020q3/005877.html][1]

因此,我将

_R_CHECK_BASHISMS_ = FALSE
添加到我的
.Renviron
文件中,但这没有效果。

我需要做什么才能删除此警告?

r package rstudio warnings
1个回答
0
投票

R 检查代码希望在不依赖

configure
shell 的情况下编写
cleanup
bash
脚本,因为它并非在可能安装了软件包的所有系统上都可用。

它使用名为

checkbashisms
的脚本来查看这些文件以确认它们是可移植编写的。但是,
checkbashisms
不包含在 R 中,它假定在您的系统上可用。因此,如果您有
configure
cleanup
脚本,但 R 找不到
checkbashisms
,您会收到警告。

这意味着有几种方法可以停止该消息。您可以将

checkbashisms
安装在 R 可以找到的地方。它使用
PATH
环境变量来搜索外部程序,因此您需要确保
checkbashisms
安装在其中列出的目录之一中。 (您可以在 R 中使用
Sys.getenv("PATH")
查看该环境变量。)

另一种方法是确保您的包不包含

configure
cleanup
脚本。这些仅适用于执行复杂操作(通常使用外部库)的包。您在评论中提到自动生成的脚本正在寻找 Stan 模型。这可能意味着您需要这些脚本。

但是,除非您的编写水平相当低,否则您的包依赖于另一个使用 Stan 的包可能就足够了,例如

RStan
。然后,如果找不到 Stan,则其他包将无法加载,您的包也将无法加载。然后您可以删除
configure
cleanup
并且不需要安装
checkbashisms

© www.soinside.com 2019 - 2024. All rights reserved.