无法安装 rvest 包

Posted

技术标签:

【中文标题】无法安装 rvest 包【英文标题】:unable to install rvest package 【发布时间】:2015-09-09 14:41:21 【问题描述】:

我需要为 R 版本 3.1.2 (2014-10-31) 安装 rvest 包

我收到以下错误:

    checking whether the C++ compiler supports the long long type... no
*** stringi cannot be built. Upgrade your C++ compiler's settings
ERROR: configuration failed for package ‘stringi’
* removing ‘/usr/local/lib64/R/library/stringi’
ERROR: dependency ‘stringi’ is not available for package ‘stringr’
* removing ‘/usr/local/lib64/R/library/stringr’
ERROR: dependency ‘stringr’ is not available for package ‘httr’
* removing ‘/usr/local/lib64/R/library/httr’
ERROR: dependency ‘stringr’ is not available for package ‘selectr’
* removing ‘/usr/local/lib64/R/library/selectr’
ERROR: dependencies ‘httr’, ‘selectr’ are not available for package ‘rvest’
* removing ‘/usr/local/lib64/R/library/rvest’

关于如何安装 R 包 rvest 的任何想法?

【问题讨论】:

您是从 CRAN 安装的吗?你使用的命令是什么? install.packages("rvest") 您是否尝试更新the C++ compiler supports the long long type @AaronKatch,我不知道该怎么做 由于您使用的是过时版本的 R,您需要从与旧版本匹配的包版本进行编译,并且您需要使用 R 的开发版本和支持工具因为在基本分布中有时会缺少标头。 【参考方案1】:

我的系统是带有 R:3.2.3 的 Ubuntu 14.04,我遇到了同样的问题。

然后我检查了 err meg 并尝试安装 libcurl4-openssl-dev 和 libxml2-dev 库:

sudo apt-get install libcurl4-openssl-dev

sudo apt-get install libxml2-dev

安装后install.packages("rvest")成功。

【讨论】:

这是 rvest 不是 vrest【参考方案2】:

当我尝试在全新安装的 Ubuntu 18.04 上的 Rstudio 版本 1.1.456 中安装 tidyverse, DESeq2, RUVSeq 时,我需要诸如 Rcurl, XML, rvest, xml2 之类的依赖项。无论如何,有一堆缺失的依赖项。这个答案可能更适合作为 Ubuntu 18.04 的评论,但我没有那么多声誉。因此,这里只是尝试对适用于 Ubuntu 18.04 的解决方案进行总结。 在终端中,运行:

 sudo apt-get install libcurl4-openssl-dev libssl-dev
 sudo apt-get install libxml2-dev

然后在Rstudio内,

install.packages("xml2")
install.packages("rvest")
install.packages("tidyverse")  # might need other dependencies installed in Rstudio

得到tidyverse! 在终端:

sudo apt-get install libmysqlclient-dev  ## for RMySQL

然后在Rstudio内

source("https://bioconductor.org/biocLite.R")
biocLite("DESeq2")
biocLite('RUVSeq')             ## might have messages as following

installation path not writeable, unable to update packages: cluster, foreign, MASS, Matrix, mgcv, nlme, survival

在终端中:

sudo R                      ## give R the root permission
## in the R session within the terminal
pks <- c('cluster', 'foreign', 'MASS', 'Matrix', 'mgcv', 'nlme', 'survival')
install.packages(pks)
q()

这是我自己的经验。希望这个有很好的通用性

【讨论】:

【参考方案3】:

我能够像这样构建 stringi 包:

install.packages('stringi', configure.args='--disable-cxx11')

【讨论】:

很好,但是使用 stringi 提交票证,因为它应该(理想情况下)在发现编译器不足时自动执行此操作。【参考方案4】:

我对这个问题的回答肯定迟到了。不过,有人可能会觉得它很有用。

我遇到了同样的问题,所以我在 shell 上运行这个命令:

sudo apt-get upgrade pkg-config

它对我有用。

【讨论】:

以上是关于无法安装 rvest 包的主要内容,如果未能解决你的问题,请参考以下文章

rvest:如何找到所需的 CSS 选择器

当 rvest 无法识别提交按钮时提交 POST 表单

关于无法打开此安装程序包

无法定位安装包 Hadoop,应该怎么办

包无法在 R 中卸载:无法安装包

无法安装 Nuget 包