关于安装:无法访问R中的用户库-“非零退出状态”警告

Can't access User Library in R - “Non-Zero Exit Status” warning

当我尝试在工作笔记本电脑上安装软件包时,出现错误。 有人告诉我,我拥有笔记本电脑的全部特权,因此应该没有障碍。

我认为这可能与安装包所在的库的文件路径有关? 我正在使用64位R和R Studio的最新版本,并使用加拿大的U CRAN镜像站点。

这是我尝试使用plyr安装时出现的内容

1
install.packages("plyr")

also installing the dependency ‘Rcpp’
Packages which are only available in source form, and may need compilation
of C/C++/Fortran: ‘Rcpp’ ‘plyr’

当我尝试安装ggplot2时,这是一长串错误消息:

ERROR: dependency 'stringi' is not available for package 'stringr'
* removing 'C:/RPackages/R-3.2.3/library/stringr'
Warning in install.packages :
running command '"C:/RPACKA~1/R-32~1.3/bin/x64/R" CMD INSTALL -l"C:
Packages
-3.2.3\library" C:\Users\MICHAE~1.COL\AppData\Local\Temp
tmpGs24zA/downloaded_packages/stringr_1.0.0.tar.gz' had status 1
Warning in install.packages :
installation of package ‘stringr’ had non-zero exit status
ERROR: dependency 'colorspace' is not available for package 'munsell'
* removing 'C:/RPackages/R-3.2.3/library/munsell'
Warning in install.packages :
running command '"C:/RPACKA~1/R-32~1.3/bin/x64/R" CMD INSTALL -l"C:
Packages
-3.2.3\library" C:\Users\MICHAE~1.COL\AppData\Local\Temp
tmpGs24zA/downloaded_packages/munsell_0.4.3.tar.gz' had status 1
Warning in install.packages :
installation of package ‘munsell’ had non-zero exit status
ERROR: dependencies 'digest', 'plyr', 'reshape2', 'scales' are not available for package 'ggplot2'
* removing 'C:/RPackages/R-3.2.3/library/ggplot2'
Warning in install.packages :
running command '"C:/RPACKA~1/R-32~1.3/bin/x64/R" CMD INSTALL -l"C:
Packages
-3.2.3\library" C:\Users\MICHAE~1.COL\AppData\Local\Temp
tmpGs24zA/downloaded_packages/ggplot2_2.0.0.tar.gz' had status 1
Warning in install.packages :
installation of package ‘ggplot2’ had non-zero exit status
The downloaded source packages are in
‘C:\Users\michael.colangelo\AppData\Local\Temp
tmpGs24zA\downloaded_packages’

"非零退出状态"是什么意思? 是否正在尝试查找用于安装的库?>代码中提到的appData文件似乎不存在,或者我无法访问它。 如何将其更改为另一个本地文件夹?


非零退出状态表示在这种情况下系统无法安装软件包。在安装过程中似乎存在许多未解决的依赖项。您可以尝试通过使用选项dependencies=TRUE安装软件包来解决此问题。像这样:

1
install.packages("ggplot2", dependencies=TRUE)

我的几个学生在R3.3.3(Mac)和R3.5.0(全部)上遇到了类似的问题。我们发现安装devtools并从github加载程序包有助于解决奇怪的"非零退出状态"问题,例如在https://github.com/topepo/C5.0上获取C50软件包:

1
2
require("devtools")
install_github("topepo/C5.0")

在此方法最终生效之前,我们尝试了此页面上列出的所有解决方案。


我一直在同一个问题上挣扎,很长一段时间,mikes解决方案也没有帮助我。我尝试了一切,直到重新安装R。仍然无法正常工作。
但是,在我的情况下,解决方案非常简单。在终端中,不要将R作为R运行,而是使用:

1
sudo -i R

或更改r软件包文件夹的所有权,因为如果该文件夹由root拥有,则不允许您对其进行读写。


安装所有tidyverse软件包是对我唯一有效的方法。

1
install.packages("tidyverse")

通过为我提供对Resources / library文件夹的所有权权限,解决了我的问题。

我解决该问题的方法是进入"恢复模式"(启动时按Command + R),然后进入"实用程序">"终端"。

我暂时通过以下方式禁用了"配置系统完整性保护"(警告:请记住,以后再启用):

1
csrutil disable

回到macOS,右键单击库文件夹>获取信息>共享和权限>单击锁,然后输入管理员密码>,然后添加我自己进行读/写。

重新启动Mac,再次进入恢复模式,转到终端,然后启用Integrity Protection

1
csrutil enable

希望对您有所帮助,请记住要重新启用csrutil,在这种状态下您的系统非常容易受到攻击,因此,如果您怀疑自己有某种恶意软件,请不要使用此解决方案。


RCpp必须由Rtools编译。您应该检查Rtools的路径。

顺便说一句,在我的计算机(WIN10,R-3.5.1)上,必须在C:
tools
上安装Rtools。如果更改安装位置,R将找不到它。


我有同样的问题,并通过安装g ++编译器解决了

$ sudo apt安装g ++