我在使用renv时遇到问题。对于较大的项目,我们希望使用renv来具有相同的r版本和所有软件包。但是,一旦有较新版本的软件包可用,我们运行后renv::restore()
,会出现类似以下的错误(请注意:rcpparmadillo不是唯一的软件包。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
我现在有两个问题:
谢谢。丽兹
最终的问题renv
是试图从源代码安装这些软件包,因为CRAN不再提供这些旧软件包的二进制文件。有两个潜在的解决方案:
考虑使用MRAN检查点作为R存储库。好的一面是这些旧软件包的二进制文件将仍然可用;缺点是,如果确实有更新的软件包可用,则不会通知您。
安装必需的软件,以便您可以从源代码构建这些软件包。
对于Windows 2.,您将需要安装Rtools:
https://cran.r-project.org/bin/windows/Rtools/
您还可以使用该renv::equip()
功能下载各种库,这些库需要从源代码(例如nloptr
)中编译某些软件包。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句