gpt4 book ai didi

r - devtools::install_github 因 CA 证书错误而失败

转载 作者:行者123 更新时间:2023-12-04 10:05:12 24 4
gpt4 key购买 nike

当我尝试调用 install_github 时,出现以下错误(不仅针对此包,还针对所有 github 包):

> install_github('ramnathv/slidify')
Downloading github repo ramnathv/slidify@master
Error in curl::curl_fetch_memory(url, handle = handle) :
Problem with the SSL CA cert (path? access rights?)

但是如果我直接使用RCurl通过ssl访问github,就没有任何问题:
>  x <- getBinaryURL(
url='https://github.com/ramnathv/slidify/archive/master.zip',
followlocation=1L
)

工作没有错误,因此 RCurl 可以正确验证 SSL 证书并下载存档文件。
> sessionInfo()
R version 3.2.1 (2015-06-18)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Debian GNU/Linux 8 (jessie)

locale:
[1] LC_CTYPE=en_US.utf8 LC_NUMERIC=C
[3] LC_TIME=en_US.utf8 LC_COLLATE=en_US.utf8
[5] LC_MONETARY=en_US.utf8 LC_MESSAGES=en_US.utf8
[7] LC_PAPER=en_US.utf8 LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_US.utf8 LC_IDENTIFICATION=C

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

other attached packages:
[1] RCurl_1.95-4.7 bitops_1.0-6 devtools_1.8.0

loaded via a namespace (and not attached):
[1] httr_1.0.0 R6_2.1.0 magrittr_1.5 rversions_1.0.2
[5] tools_3.2.1 curl_0.9.1 Rcpp_0.12.0 memoise_0.2.1
[9] xml2_0.1.1 stringi_0.5-5 git2r_0.10.1 stringr_1.0.0
[13] digest_0.6.8


> curlVersion()

$age
[1] 3

$version
[1] "7.38.0"

$vesion_num
[1] 468480

$host
[1] "x86_64-pc-linux-gnu"

$features
ipv6 ssl libz ntlm asynchdns spnego
1 4 8 16 128 256
largefile idn tlsauth_srp ntlm_wb
512 1024 16384 32768

$ssl_version
[1] "OpenSSL/1.0.1k"

$ssl_version_num
[1] 0

$libz_version
[1] "1.2.8"

$protocols
[1] "dict" "file" "ftp" "ftps" "gopher" "http" "https" "imap"
[9] "imaps" "ldap" "ldaps" "pop3" "pop3s" "rtmp" "rtsp" "scp"
[17] "sftp" "smtp" "smtps" "telnet" "tftp"

$ares
[1] ""

$ares_num
[1] 0

$libidn
[1] "1.29"

如果我使用 httr::set_config( httr::config( ssl_verifypeer = 0L ) )那么我就可以成功运行 install_github但我更愿意实际检查 ssl 证书。

任何人都可以提供解决方案吗?

最佳答案

终于想通了这一点。

我安装了两个不同的 ssl 库,出于某种原因,针对 libcurl4-openssl-dev 构建的 RCurl 包和针对 libcurl4-nss-dev 构建的 curl 包,但我只为 openssl 安装了 CA key ,而不是为 nss。

我用 remove.packages('curl') 解决了我的问题在 R 中,然后退出 R 并从 shell apt-get remove libcurl4-nss-dev开始 R 和 install.packages('curl')
我的错误导致了我的问题,是使用 RCurl 测试 SSL CA 处理。而不是 httrcurl ,这会让我很快意识到我的 curl包被链接到错误的 SSL 库。

关于r - devtools::install_github 因 CA 证书错误而失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31643036/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com