错误设置证书验证位置,install_github

时间:2013-10-30 20:49:06

标签: r github installation devtools rcurl

我正在尝试从github安装一个软件包,但是当我遇到错误时,我一直都会遇到错误 使用install_github

library(devtools)
install_github(repo="swirl", username="ncarchedi")
Installing github repo(s) swirl/master from ncarchedi
Downloading swirl.zip from https://github.com/ncarchedi/swirl/archive/master.zip
Error in function (type, msg, asError = TRUE)  : 
  error setting certificate verify locations:
  CAfile: /Library/Frameworks/R.framework/Versions/3.0/Resources/library/RCurl/CurlSSL/cacert.pem
  CApath: none

我曾尝试安装多个不同的软件包 (包括ggmap的更新版本),我总是得到同样的错误。它 必须与RCurl有关,但我不明白这是什么问题 是,或如何解决它。我有devtools(版本1.3)和RCurl (版本1.95-4.1)。我正在mac上运行R版3.0.1(“Good Sport”)。

sessionInfo()

的结果
sessionInfo()
R version 3.0.1 (2013-05-16)
Platform: x86_64-apple-darwin10.8.0 (64-bit)

locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] RCurl_1.95-4.1 bitops_1.0-5   devtools_1.3  

loaded via a namespace (and not attached):
[1] digest_0.6.3   evaluate_0.4.3 httr_0.2       memoise_0.1    parallel_3.0.1  stringr_0.6.2 
[7] tools_3.0.1    whisker_0.3-2

4 个答案:

答案 0 :(得分:6)

问题是由于R包curl发生了变化。

您可以按如下方式解决问题:

1)。打开一个新的MRO会话并删除包curlhttr

remove.packages(c("curl","httr"))

2)。重新启动MRO并再次安装软件包,这次使用install.packages()函数:

install.packages(c("curl", "httr"))

3)。设置环境变量CURL_CA_BUNDLE

Sys.setenv(CURL_CA_BUNDLE="/utils/microsoft-r-open-3.4.3/lib64/R/lib/microsoft-r-cacert.pem")

4)。尝试使用来自github的install_github()安装软件包(现在应该可以使用):

例如:

install_github("ropensci/tokenizer")

参考:

rvest read_html function does not work

答案 1 :(得分:3)

在我的情况下,我的CAfile存在,但是是0字节。我通过运行

修复了这个问题
update-ca-trust

创建了正确的文件。

答案 2 :(得分:2)

这个SO答案(R - devtools Github install fails)对类似的问题建议尝试重新安装RCurl - 我猜这里可能会修复机器卷曲的路径,无论如何,尝试一下。

答案 3 :(得分:0)

我在将更改推送到github时遇到此错误 git config --global http.sslverify" false" 将解决问题

这是正在进行的原始讨论 https://github.com/npm/npm/issues/1484