首页 > 解决方案 > 有没有办法“自我更新”多年未更新的软件包?

问题描述

所以,我多次遇到过这个问题:我找到了一个“独一无二”的包,它应该可以很好地满足我的需求。不幸的是,该软件包不适用于 R 的更新版本。很多时候,查看软件包,它们已经多年没有更新了!尽管可以将 R Studio 降级到兼容版本,但这确实很烦人,并且/或者您可能正在使用与降级版本不兼容的不同包的库。

话虽这么说,更笼统地说,有没有办法“自我更新”一个包?意思是,让它适合在当前的 R 版本上运行?

因此,如果您有任何资源、建议等,请告诉我(我开始绝望了)。提前谢谢大家了!

信息:如果重要的话,我目前正在 MacOS Mojave (10.14.2) 上运行 R 版本 3.4.4。

标签: rupdatesr-package

解决方案


包腐烂的原因之一是 CRAN 要求包通过每个 R 更新的严格兼容性测试。您正在运行一个使用了将近一年的 R 版本(尽管您拥有当前版本的操作系统)。有些人在几年前维护了几个版本的 R,但大多数人没有。在某些情况下,您将能够下载一个*.tar.gz版本的软件包并使用终端介导的会话使用“R CMD INSTALL p"/path/to/pkg-name.tag.gz"或在 R 控制台中使用:install.packages("path/to/pkg-name.tar.gz", repo=NULL, dependencies=TRUE, type="source")

您当然应该研究 pkg 的说明文件,并确保您有可用的编译器和外部系统资源。(推测 Java 运行时环境的要求在 DESCRPTION 文件中?)目前的问题可能很有用,但在没有用于演示和测试的特定包的情况下,它确实非常模糊。


推荐阅读