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

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

我在使用时遇到问题。对于较大的项目,我们要使用来具有相同版本的和所有包。但是,一旦有较新版本的软件包可用,并且我们运行renv::restore(),我们将收到如下错误(请注意:不是唯一的软件包。它在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. 如果每次有新版本可用时,崩溃,我们如何在整个团队中使用相同版本的软件包?

谢谢。丽兹

r failed-installation rcpparmadillo renv
1个回答
0
投票

这里的最终问题是renv试图从源代码安装这些软件包,因为CRAN不再提供这些旧软件包的二进制文件。有两种可能的解决方案:

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

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

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

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

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

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