【发布时间】:2016-06-16 17:45:50
【问题描述】:
三天前,我可以在三个不同的系统上毫无问题地安装软件包。 R 在所有三个系统上都进行了重建(Gentoo 强制重建),现在我无法从 CRAN 下载和安装它们中的任何一个......
> install.packages('rmarkdown')
Warning: unable to access index for repository https://r-forge.r-project.org/src/contrib:
internet routines cannot be loaded
Warning: unable to access index for repository https://cran.rstudio.com/src/contrib:
internet routines cannot be loaded
Warning: unable to access index for repository https://cran.uk.r-project.org/src/contrib:
internet routines cannot be loaded
这是我在.Rprofile...中定义的三个存储库...
## Set CRAN mirrors
local({r <- getOption("repos"); r["CRAN"] <- "https://cran.uk.r-project.org"; options(repos=r)})
options(repos=c(RStudio='https://rstudio.org/_packages', getOption('repos')))
options(repos=c(RStudio='https://cran.rstudio.com/', getOption('repos')))
关于完整信息..
> sessionInfo()
R version 3.2.3 (2015-12-10)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Gentoo/Linux
locale:
[1] LC_CTYPE=en_GB.utf8 LC_NUMERIC=C
[3] LC_TIME=en_GB.utf8 LC_COLLATE=en_GB.utf8
[5] LC_MONETARY=en_GB.utf8 LC_MESSAGES=en_GB.utf8
[7] LC_PAPER=en_GB.utf8 LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_GB.utf8 LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] devtools_1.10.0
loaded via a namespace (and not attached):
[1] memoise_1.0.0 digest_0.6.9
搜索我找到了几个关于此的主题。前两个只是镜像关闭或错误指定的地方,因为不支持 https...
- Unable to access index for repository http://mirrors.dotsrc.org/cran/src/contrib
- R - Warning: unable to access index for repository
...这两个都不是问题,因为我使用的是已启动的镜像 (e.g.)。然后我遇到了以下两个线程(一个引用另一个)...
- R-3.2.1 unable to load shared object internet.so
- Error in install.packages: internet routines cannot be loaded using StatET while it works in R console
还提到了去年 11 月的 thread on R-help。
阅读这些似乎问题可能是几件事之一......
-
LD_LIBRARY_PATH未在我的系统环境中设置的问题。 - SSL 支持存在问题。
LD_LIBRARY_PATH 的问题
检查一下我的三个系统...
> Sys.getenv("LD_LIBRARY_PATH")
[1] "/usr/lib64/R/lib:/usr/lib64/blas/reference:/usr/lib64/lapack/reference"
> Sys.getenv("LD_LIBRARY_PATH")
[1] "/usr/lib64/R/lib:/usr/lib64/blas/reference:/usr/lib64/lapack/reference:/etc/java-config-2/current-system-vm/jre/lib/amd64/server"
> Sys.getenv("LD_LIBRARY_PATH")
[1] "/usr/lib64/R/lib:/usr/lib64/blas/reference:/usr/lib64/lapack/reference:/etc/java-config-2/current-system-vm/jre/lib/amd64/server"
所以 R 可以找到自己的库。这表明它可能是 SSL 支持的另一个问题
SSL 支持问题
我发现其他人遇到了这个问题(请参阅here),所以我检查了 Curl 是否可以访问这些 URL 并因此支持 SSL...
# curl https://cran.rstudio.com/src/contrib/
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<head>
<title>Index of /src/contrib</title>
</head>
<body>
<h1>Index of /src/contrib</h1>
<table><tr><th><img src="/icons/blank.gif" alt="[ICO]"></th><th><a href="?C=N;O=D">Name</a></th><th><a href="?C=M;O=A">Last modified</a></th><th><a href="?C=S;O=A">Size</a></th><th><a href="?C=D;O=A">Description</a></th></tr><tr><th colspan="5"><hr></th></tr>
<tr><td valign="top"><img src="/icons/back.gif" alt="[DIR]"></td><td><a href="/src/">Parent Directory</a></td><td> </td><td align="right"> - </td><td> </td></tr>
<tr><td valign="top"><img src="/icons/folder.gif" alt="[DIR]"></td><td><a href="00Archive/">00Archive/</a></td><td align="right">03-Mar-2016 04:50 </td><td align="right"> - </td><td> </td></tr>
....
所以看起来 Curl 工作正常,我可以访问 URL,但 R 不能。
欢迎任何有关如何解决此问题的指示,因为我无法弄清楚。
提前致谢。
【问题讨论】:
标签: r