R中的错误:(仅以源代码形式提供的包,可能需要编译C/C++/Fortran)

我正试图在R-Studio中安装“yaml”和“stringi”软件包,但它不断给我带来以下错误:

>安装程序包(“stringi”)
仅以源代码形式提供的包,可能需要编译C/C++/Fortran:“stringi”
这些将不会安装

>install.packages('yaml'))
仅以源代码形式提供的包,可能需要编译C/C++/Fortran:'yaml'
这些将不会安装

我怎样才能让这些正确安装

该错误是由于R在CRAN上找不到该软件包的二进制版本,而只是找到该软件包的源版本,并且您的Windows安装无法编译该软件包。通常不会发生这种情况,但在这种情况下,是由于CRAN的一些后视镜(临时)停机造成的。如果键入:

>getOption(“回购协议”)
克兰克兰特酒店
"http://cran.rstudio.com" "http://www.stats.ox.ac.uk/pub/RWin" 
属性(,“RStudio”)
[1] 真的

您将看到R使用”http://cran.rstudio.com“默认情况下,查找要下载的软件包。如果您看到cran mirrors网页,您可以在顶部看到“http://cran.rstudio.com“实际上会将您重定向到全球不同的服务器(我假设是根据地理位置)

当我遇到上述问题时,我通过手动将repo更改为提供的链接中的一个URL来解决它。我建议您使用不同的国家(甚至大陆),以防收到上述错误

我在下面提供了一些URL,以防上面的链接发生变化:

  1. 巴西http://nbcgib.uesc.br/mirrors/cran/
  2. 意大利http://cran.mirror.garr.it/mirrors/CRAN/
  3. 日本http://cran.ism.ac.jp/
  4. 南非http://r.adu.org.za/
  5. 美国https://cran.cnr.Berkeley.edu/

您需要按如下方式运行函数install.packages

install.packages(“<package\u name>”,repo=”http://nbcgib.uesc.br/mirrors/cran/')
#或列表或链接中的任何其他url

然后其中一个应该从另一个镜像安装二进制文件

发表评论