【问题标题】:Packages won't install through RStudio包不会通过 RStudio 安装
【发布时间】:2020-10-28 20:50:22
【问题描述】:

我已经使用 RStudio 好几个月了,安装软件包从来没有遇到过问题。但是,我不再安装软件包。而我拥有的软件包,比如 ggplot2,将无法工作。例如,当我尝试安装 glmnet 时,我收到以下错误

WARNING: Rtools is required to build R packages but is not currently installed. Please download and install the appropriate version of Rtools before proceeding:

https://cran.rstudio.com/bin/windows/Rtools/
Installing package into ‘C:/Users/User/Documents/R/win-library/4.0’
(as ‘lib’ is unspecified)
also installing the dependencies ‘iterators’, ‘foreach’, ‘shape’

# ...

package ‘glmnet’ successfully unpacked and MD5 sums checked

当我尝试加载它时:

library(glmnet)
#
Loading required package: Matrix
Error: package or namespace load failed for ‘Matrix’ in inDL(x, as.logical(local), as.logical(now), ...):
 unable to load shared object 'C:/Program Files/R/R-4.0.3/library/stats/libs/x64/stats.dll':
  LoadLibrary failure:  The specified module could not be found.

Error: package ‘Matrix’ could not be loaded

但当我尝试安装 Matrix 时,也会出现同样的问题。我不明白为什么会这样。我已多次卸载 R 和 Rstudio,但问题仍然存在。我安装了Rtools,放到自己想要的目录下,还是什么都安装不了,加载不了。

知道会发生什么吗?不到两个月前,我能够安装 ggplot2 并且从那时起我就一直在使用它(除了过去几天)。

【问题讨论】:

  • 错误信息中列出的文件是否存在C:/Program Files/R/R-4.0.3/library/stats/libs/x64/stats.dll?你运行的是什么版本的windows?你是在 32 位还是 64 位机器上?这与您在尝试重新安装 R 之前收到的错误消息完全相同吗?
  • 确实存在。我正在运行 Windows 10。64 位机器。我认为这是我在重新安装所有内容之前遇到的相同错误。或者……它指向 R-4.0。如何更改 Rstudio 安装包的目录?它将软件包安装在 ``C:/Users/User/Documents/R/win-library/4.0
  • 好吧,根据您的第一条消息,它正在将软件包安装到 C:/Users/User/Documents/R/win-library/4.0 (通常是每个用户的路径)。只有 R 附带的软件包才会进入 Program Files 文件夹。安装时,您可以指定它们应该安装到的lib= 路径,R 会在您的.libPaths() 中查找包。但是无法在核心 DLL 上加载库消息很奇怪。您是否运行了一些过于激进的防病毒软件?您是否尝试过重新启动计算机?
  • 我不认为我的杀毒软件过于激进。我刚刚重新启动了电脑。问题依然存在。
  • 我同意@MrFlick 的观点,出于多种原因,任何新的(非基础)包都不应进入 R 安装目录。其次,尽管如此,在 Windows 上,带有空格的路径通常很成问题(cran.r-project.org/bin/windows/base/…),我建议将 R 安装在非标准位置,例如 c:/R/c:/ProgramData/R/(不是 Program Files)。

标签: r


【解决方案1】:

如果问题仍然存在,请转到 C:\Program Files\R\R-4.0.3 并右键单击“库”文件夹。转到“属性”,然后单击“安全”选项卡。编辑访问权限以赋予您自己(用户)编辑权限。

【讨论】:

    【解决方案2】:

    我能够通过以下步骤解决此问题:

    1. 将 R 重新安装到 C:/R 之类的地方

    2. 下载rtools

    3. 在 RStudio 中,输入 writeLines('PATH="C:\rtools40\usr\bin;${PATH}"', con = "~/.Renviron")。本质上,您希望指向您刚刚安装的 rtools40 的 bin。

    4. 通过在 RStudio 中键入来测试这是否有效, Sys.which("make"),应该返回类似: "C:\\rtools40\\usr\\bin\\make.exe"

    就是这样。一旦您知道要采取的步骤,就很简单了。

    【讨论】:

      【解决方案3】:

      进入设置, 更新与安全, 视窗安全, 病毒和威胁防护, 管理设置(在病毒和威胁防护设置下), 管理受控文件夹访问(在受控文件夹访问下), 区块历史

      检查阻止历史记录,看看在您尝试安装 R 包时是否有任何访问被阻止。如果有,请单击历史详细信息下的“受控文件夹访问设置”更改设置。

      【讨论】:

        猜你喜欢
        • 2015-12-17
        • 2017-03-11
        • 2015-03-14
        • 2012-06-28
        • 2019-02-11
        • 2021-06-14
        • 2015-07-04
        • 1970-01-01
        • 2018-06-11
        相关资源
        最近更新 更多