命名空间 'rlang' 正在加载 0.4.5,但需要 >= 0.4.10

namespace 'rlang' 0.4.5 is being loaded, but >= 0.4.10 is required

我正在尝试安装 'lifecycle' 软件包,但需要 rlangs。

键入 install.packages('lifecyle') 时出现错误,我正在导入比所需更新的 rlangs 包(正在加载 'rlang' 0.4.5,但是>= 0.4.10 是必需的)。

  • installing source package 'lifecycle' ...
    ** package 'lifecycle' successfully unpacked and MD5 sums checked
    ** byte-compile and prepare package for lazy loading
    Error in loadNamespace(i, c(lib.loc, .libPaths()), versionCheck = vI[[i]]) :
    namespace 'rlang' 0.4.5 is being loaded, but >= 0.4.10 is required
    ERROR: lazy loading failed for package 'lifecycle'
  • removing 'C:/Users/user/R/library/lifecycle' In R CMD INSTALL
    Warning in install.packages : installation of package ‘lifecycle’ had non-zero exit status

我已经卸载了 rlangs 并自行重新安装,但它仍然无法正常工作。

不确定是否有帮助,但我事先收到以下消息:

There are binary versions available but the source versions are later:
rlang - binary: 0.4.5 - source: 0.4.10 - needs_compilation: TRUE
lifecycle - binary: 0.2.0 - source: 1.0.0 - needs_compilation: FALSE

此错误毫无意义,与其他出现此类错误的帖子不同。

首先:你的版本不是新的,而是旧的。 0.4.5 < 0.4.10.

问题是无论出于何种原因,您可以访问的二进制版本是 0.4.5 版,但源版本(需要编译)是 0.4.10 版。

我认为最简单的解决方案是下载源码包并将其安装为源码。

install.packages("https://cran.r-project.org/src/contrib/Archive/rlang/rlang_0.4.10.tar.gz", repos = NULL, type="source")

现在,如果您不想遇到麻烦,我相信另一种可能的解决方案是更新您的 R 版本,这将反过来更新大多数软件包可用的二进制版本。