我正在尝试在R-Studio中安装'yaml'和'stringi'软件包,它不断给我这些错误:
> install.packages("stringi")
Package which is only available in source form, and may need compilation of C/C++/Fortran: ‘stringi’
These will not be installed
或
> install.packages('yaml')
Package which is only available in source form, and may need compilation of C/C++/Fortran: ‘yaml’
These will not be installed
如何正确安装这些?
答案 0 :(得分:25)
该错误是由于R无法在CRAN上找到软件包的二进制版本,而只是找到软件包的源版本而您的Windows安装无法编译它。通常这不会发生,但在这种情况下是由CRAN的某些镜像的(临时)中断引起的。如果输入:
> getOption('repos')
CRAN CRANextra
"http://cran.rstudio.com" "http://www.stats.ox.ac.uk/pub/RWin"
attr(,"RStudio")
[1] TRUE
默认情况下,您会看到R使用"http://cran.rstudio.com"
来查找要下载的包。如果您看到the cran mirrors web page,您可以在顶部看到"http://cran.rstudio.com"
实际上将您重定向到全球不同的服务器(我假设根据地理位置)。
当我遇到上述问题时,我通过手动将回购更改为提供的链接中的一个网址解决了这个问题。如果您收到上述错误,我建议您使用其他国家/地区(甚至是大陆)。
如果上面的链接发生变化,我会在下面提供一些网址:
您需要按如下方式运行函数install.packages
:
install.packages('<package_name>', repo='http://nbcgib.uesc.br/mirrors/cran/')
#or any other url from the list or link
然后其中一个应该从另一个镜像安装二进制文件。
答案 1 :(得分:13)
您需要安装RTools来构建这样的包(即源包而不是二进制包)。安装Rtools后,再次尝试install.packages("ggplot2")
,R会提示您:
Do you want to attempt to install these from source?
y/n:
(见下图)
您需要回答y
,它会尝试编译包,以便安装。
答案 2 :(得分:7)
今天遇到这个问题,现在首先下载Windows二进制文件,然后安装例如,解决它。
install.packages("https://cran.r-project.org/bin/windows/contrib/3.3/stringi_1.1.1.zip", repos =NULL)
转到https://cran.r-project.org/然后转到R Binaries / Windows / contrib并将url作为参数复制到install.packages()
答案 3 :(得分:2)
从zip文件安装包 - 可从r-project网站下载。
基本R
在RStudio中
答案 4 :(得分:1)
一切都对我有用,直到我发现计算机上安装了旧版本的R。卸载所有内容并安装最新的R版本是可行的!
答案 5 :(得分:0)
在使用最新版本的R 时遇到了这个问题,因此没有可用的二进制文件。一个简单的解决方案是更新我的R版本。
答案 6 :(得分:0)
我不得不download the latest version of Rtools:
进入下载文件夹并双击它进行安装。
关闭并重新打开任何 R 会话。
现在包应该像往常一样安装。
但是,如果您仍然遇到问题,请尝试从源代码安装软件包(使用 type="source"
)
像这样:
install.packages("dplyr", type="source")