软件包安装期间未找到 Rtools 4.0

Rtools 4.0 not found during package installation

对于我尝试安装的许多 R 包(在我的 Windows 10 机器上),我收到警告:

> install.packages('rstan')
WARNING: Rtools is required to build R packages but is not currently installed. Please download and install the appropriate version of Rtools before proceeding:

我认为这只是一条错误的错误消息,因为安装似乎仍在继续,但最近我尝试安装一个软件包 (rstan),但发现它完全无法运行。我的直觉是,由于 rstan 完全 依赖于使用 rcpp 编译代码,也许我只是摆脱了以前的包,因为我没有使用它们中依赖于 Rtools 的函数。

我重新安装了 Rtools 4.0,并且 devtools::find_rtools() returns TRUE。但是当我 运行 Sys.getenv()['PATH'] 时,路径上没有 Rtools。安装过程中没有地方可以告诉它我也想在路径上使用 Rtools,所以 these instructions 没有帮助 - 它们引用的菜单对我来说不存在。所以我认为这可能是新的 Rtools 4.0 没有将自己放在系统路径上的问题。但是即使我直接编辑 Windows 路径环境变量(系统和用户版本)以包含 pkgbuild::rtools_path() 给我的路径(C:\rtools40\usr\bin,一个同时存在的路径,问题仍然存在并且看起来是正确的)。

据我所知,这似乎与 Rtools 4.0 (Rstudio falsely claims it was deleted), since there are no claims Rtools was deleted. It's also not the same as Rtools not being detected by R 的问题不同:我没有在 Rtools 安装中遗漏任何功能 - 我什至没有选择在我的安装向导中。

如有任何意见或建议,我们将不胜感激。

Rtools40 要求您将其 bin 目录添加到您的 PATH 变量中。完整的说明是 here.

您可以使用以下任一方法更新您的 ~/.Renviron 文件:

您可以通过打开 ~/.Renviron 并在其中放入以下内容来手动执行此操作:

PATH="${RTOOLS40_HOME}\usr\bin;${PATH}"

您还可以将 R(Gui 或 RStudio 或 Shell)与以下内容一起使用:

writeLines(
    'PATH="${RTOOLS40_HOME}\usr\bin;${PATH}"',
    con = file("~/.Renviron", open = "a")
)

这两种方法都需要重新启动 R。