问题
无法安装一些R 包(统计编程语言)从 16.04 更新到Ubuntu 18.04。该问题与共享库的使用有关libcurl
。更准确地说:
/usr/lib/x86_64-linux-gnu/libcurl.so.4: version `CURL_OPENSSL_3' not
found (required by /home/avila/R/x86_64-pc-linux-gnu-library/3.4/curl
/libs/curl.so)
到目前为止,我尝试过……
- ... 使用 安装以前版本的 libcurl
sudo apt-get install libcurl3
,但过程中的其他库已被卸载,因此 R 无法使用。
错误输出
当尝试安装名为“forecast”的包时,例如:
install.packages("forecast")
installing to /home/avila/R/x86_64-pc-linux-gnu-library/3.4/forecast/libs
** R
** data
*** moving datasets to lazyload DB
** inst
** byte-compile and prepare package for lazy loading
Error in dyn.load(file, DLLpath = DLLpath, ...) : unable to load shared
object '/home/avila/R/x86_64-pc-linux-gnu-library/3.4/curl/libs/curl.so':
/usr/lib/x86_64-linux-gnu/libcurl.so.4: version `CURL_OPENSSL_3' not
found (required by /home/avila/R/x86_64-pc-linux-gnu-library/3.4/curl
/libs/curl.so)
ERROR: lazy loading failed for package ‘forecast’
* removing ‘/home/avila/R/x86_64-pc-linux-gnu-library/3.4/forecast’
Warning in install.packages :
installation of package ‘forecast’ had non-zero exit status
其他信息:
- R 版本 3.4.4(2018-03-15)
- 平台:x86_64-pc-linux-gnu(64 位)
答案1
似乎为了获得预测结果,您可能需要先重命名现有的 R个人图书馆和:
mv /home/$USER/R /home/$USER/R_old
同时安装curl的开发包:
sudo apt-get install libcurl4-openssl-dev
然后尝试从R
终端安装你的 R 包:
$ R
install.packages("forecast")
答案2
我的决心来自 Rstudio 论坛:https://community.rstudio.com/t/error-version-curl-openssl-3-not-found/8090
只需删除 Rcurl
包并重新安装(以及devtools
等等)即可。
答案3
运行后我解决了我的问题:install.packages("RCurl")