使用 renv::restore() 安装包时出错

Error installing packages using renv::restore()

我在使用时遇到问题 . For a larger project we want to use to all have the same version of and all our packages. Yet, as soon as a newer version of a package is available and we run renv::restore() we get an error like the following (please note: 不是唯一的软件包。它也发生在 greybox、mime、stringi 等等)。

Error installing package 'RcppArmadillo':
=========================================

* installing *source* package 'RcppArmadillo' ...
** Package 'RcppArmadillo' successfully unpacked and MD5 sums checked
** using staged installation

   **********************************************
   WARNING: this package has a configure script
         It probably needs manual configuration
   **********************************************


** libs
Warning in system(paste(cmd, "shlib-clean")) 'make' not found
Warning in system(cmd) 'make' not found
ERROR: compilation failed for package 'RcppArmadillo'
* removing 'C:/Users/..../renv/staging/1/RcppArmadillo'
Error: install of package 'RcppArmadillo' failed

我现在有两个问题:

  1. 我该如何解决这个错误?
  2. 如果 每次有新版本可用时都会崩溃,我们如何才能在整个团队中使用相同版本的软件包?

谢谢。 莉齐

这里的最终问题是 renv 正在尝试从源安装这些包,因为这些旧包的二进制文件不再可从 CRAN 获得。此问题有两种可能的解决方案:

  1. 考虑使用 MRAN checkpoint 作为您的 R 存储库。好的一面是这些旧软件包的二进制文件将仍然可用;缺点是如果有更新的软件包可用,您将不会得到通知。

  2. 安装必要的软件,以便您可以从源构建这些包。

对于 Windows 上的 2.,您需要安装 Rtools:

https://cran.r-project.org/bin/windows/Rtools/

您还可以使用renv::equip()功能从源代码(例如nloptr)下载编译某些包所需的各种库。