如何将 RCurl 和 curl 更新到主机上的版本?

Mam*_*mba 7 curl r rcurl

最初,我试图devtools::install_github("EdwinTh/padr")在出现以下错误的地方使用:

Error in curl::new_handle() : An unknown option was passed in to libcurl

一段时间后,我发现,devtools使用curl/RCurl该包装的当前版本curl的主机上。

主机(Ubuntu 14.04.5 LTS)机器版本curl是:

1$ curl -V curl 7.61.0 (x86_64-pc-linux-gnu) libcurl/7.61.0 OpenSSL/1.0.1f zlib/1.2.8 libssh2/1.8.0 librtmp/2.3

其中curl位于:

12$ which curl /usr/local/bin/curl

并且在curl::new_handle()直接从终端使用时工作正常

相比之下,curl/RCurl版本是:

> RCurl::curlVersion()
$age
[1] 3

$version
[1] "7.35.0"`
Run Code Online (Sandbox Code Playgroud)

我假设这可能是潜在的问题。我现在的问题是如何让Rscurl/RCurl指向对应的版本。

我已经尝试了迄今为止在该主题上找到的所有内容,R例如:

install.packages("RCurl", type="source")install.packages("curl", type="source")

以及curl在主机上进行调整:

wget https://libssh2.org/download/libssh2-1.8.0.tar.gz
tar zxvf llibssh2-1.8.0.tar.gz
cd libssh2-1.8.0
./configure
make
sudo make install 

wget http://curl.haxx.se/download/curl-7.61.0.tar.gz
tar zxvf curl-7.61.0.tar.bz2
cd curl-7.61.0
./configure --with-libssh2=/usr/local
make
sudo make install
Run Code Online (Sandbox Code Playgroud)

但是我总是为curl/RCurl7.35.0 而不是 7.61.0获得相同的版本。

欣赏任何见解!

小智 0

我运行的是 Ubuntu 18.04,当我尝试安装 Tidyerse R 软件包但失败时遇到了同样的问题。作为依赖项,它尝试安装curl 4.3,尽管我已经安装了curl 7.58.0-2ubuntu3.12。因此,只要 R 没有意识到已经安装了现有的curl 版本,更新操作系统就没有帮助。

为我解决了这个问题: sudo apt install libcurl4-openssl-dev 和 sudo apt install libssl-dev