在 Fedora 上尝试在 R studio 中安装 tidyverse 时,其依赖关系无法安装。

3
Warning in install.packages :
  installation of package ‘googledrive’ had non-zero exit status
ERROR: dependencies ‘curl’, ‘gargle’, ‘googledrive’, ‘httr’, ‘ids’ are not available for package ‘googlesheets4’
* removing ‘/home/lanewhitten/R/x86_64-redhat-linux-gnu-library/4.0/googlesheets4’
Warning in install.packages :
  installation of package ‘googlesheets4’ had non-zero exit status
ERROR: dependencies ‘googledrive’, ‘googlesheets4’, ‘httr’, ‘rvest’ are not available for package ‘tidyverse’
* removing ‘/home/lanewhitten/R/x86_64-redhat-linux-gnu-library/4.0/tidyverse’
Warning in install.packages :
  installation of package ‘tidyverse’ had non-zero exit status

The downloaded source packages are in
    ‘/tmp/RtmpxCRrL7/downloaded_packages’

这是我的错误信息尾部。我已经在Fedora上安装了curl。
sudo dnf install curl

我完全不知道如何解决这个问题,而更改操作系统或运行虚拟机对我来说不是一个选项。


1
不要安装 tidyverse,尝试安装单独的包,例如 install.packages('dplyr', dependencies = TRUE) - akrun
这是完整的输出吗?你确切地运行了什么命令?options()$repos["CRAN"]返回什么? - MrFlick
我运行了install.packages(tidyverse)命令,返回的结果是:"https://cran.rstudio.com/"。完整的结果可以在此链接中查看:https://pastebin.com/cS2EdLNa。 - Incisor
1
你在问题中遗漏了错误的重要部分。完整粘贴中的错误是由于未安装curl的开发库引起的。这与仅安装curl本身不同。尝试像错误消息本身建议的那样运行 sudo dnf install libcurl-devel。对于 openssl-devel 也是如此。 - MrFlick
MrFlick,你真是救星,谢谢。你能把它发布为答案,这样我就可以标记为已回答了吗? - Incisor
2个回答

4
需要安装在错误消息中未指定的开发包。
sudo dnf install libcurl-devel
sudo dnf install openssl-devel 

then do install.packages("tidyverse")


为了明确起见,前两个命令要在终端中输入...然后在RStudio控制台中我们可以执行install.packages("tidyverse") - murpholinox

0

这将使您在 Fedora 上的 R 体验更加轻松

不幸的是,CRAN 不提供 Linux 的二进制文件。这就是为什么默认情况下 install.packages() 将编译您从源安装的任何包。许多包需要在系统上安装开发人员库进行编译。缺少这些包就是您遇到错误的原因。

总的来说,自己编译软件包远非理想。所有软件包的安装时间都会更长。特别是当您不经常这样做时,更新将需要很长时间。此外,找出要与之一起安装的系统开发人员包也可能很耗时,尤其是对于初学者而言。

幸运的是,Fedora 有一个 COPR 存储库,为 所有 CRAN 软件包提供最新的二进制文件。您只需在系统终端(而不是 R 控制台)中运行以下几行即可:

sudo dnf install 'dnf-command(copr)'
sudo dnf copr enable iucar/cran
sudo dnf install R-CoprManager

之后在R中运行install.packages()将通过系统包管理器安装所需软件包。这也意味着,每当您运行dnf update或使用桌面环境的软件管理GUI更新系统时,您都会收到R软件包更新。
您可以在CRAN网站上找到更多关于此的文档

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接