TwitteR r package: /usr/lib/x86_64-linux-gnu/libcurl.so.4: version `CURL_OPENSSL_3' not found

北战南征 提交于 2021-02-07 13:46:58

问题


I have updated my OS to Ubuntu 18.04 recently and twitteR R package is not working anymore.

I am having the following error message during setup_twitter_oauth.

> setup_twitter_oauth(api_key,api_secret)
[1] "Using browser based authentication"
Error in dyn.load(file, DLLpath = DLLpath, ...) : 
  unable to load shared object '/home/my-laptop/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/my-laptop/R/x86_64-pc-linux-gnu-library/3.4/curl/libs/curl.so)

I was trying to install libcurl3. But the installation process wants to remove my r installation as well as libcurl4. This is what I get,

my-laptop:~$ sudo apt-get install libcurl3
[sudo] password for my-laptop: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  cdbs dh-translations fonts-mathjax intltool jq libblas-dev libc-ares2
  libhttp-parser2.7.1 libjq1 libjs-bootstrap libjs-highlight.js
  libjs-jquery-datatables libjs-jquery-metadata libjs-jquery-tablesorter
  libjs-mathjax libjs-twitter-bootstrap liblapack-dev libncurses5-dev
  libnlopt0 libonig4 libquantlib0v5 libreadline-dev libtinfo-dev libuv1
  node-highlight.js nodejs nodejs-doc python3-scour r-doc-html scour
Use 'sudo apt autoremove' to remove them.
The following packages will be REMOVED:
  libcurl4 r-base r-base-core r-base-dev r-base-html r-cran-boot r-cran-class
  r-cran-cluster r-cran-codetools r-cran-foreign r-cran-kernsmooth
  r-cran-lattice r-cran-mass r-cran-matrix r-cran-mgcv r-cran-nlme r-cran-nnet
  r-cran-rpart r-cran-spatial r-cran-survival r-recommended
The following NEW packages will be installed:
  libcurl3
0 upgraded, 1 newly installed, 21 to remove and 1 not upgraded.
Need to get 0 B/214 kB of archives.
After this operation, 60,0 MB disk space will be freed.
Do you want to continue? [Y/n] 

Any idea how to solve this problem?

My session.info() is as follows,

> sessionInfo()
R version 3.4.4 (2018-03-15)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 18.04 LTS

Matrix products: default
BLAS: /usr/lib/x86_64-linux-gnu/blas/libblas.so.3.7.1
LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.7.1

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C               LC_TIME=de_DE.UTF-8        LC_COLLATE=en_US.UTF-8    
 [5] LC_MONETARY=de_DE.UTF-8    LC_MESSAGES=en_US.UTF-8    LC_PAPER=de_DE.UTF-8       LC_NAME=C                 
 [9] LC_ADDRESS=C               LC_TELEPHONE=C             LC_MEASUREMENT=de_DE.UTF-8 LC_IDENTIFICATION=C       

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

other attached packages:
[1] twitteR_1.1.9

loaded via a namespace (and not attached):
 [1] bit_1.1-12     httr_1.3.1     compiler_3.4.4 rjson_0.2.15   R6_2.2.2       DBI_0.8        tools_3.4.4   
 [8] yaml_2.1.18    bit64_0.9-7    openssl_1.0.1 

回答1:


The R package curl was compiled against libcurl3, which is no longer installed. If you reinstall the curl package, it compiles against the installed libcurl4, provided the necessary development packages are installed. Alternatively you can use the pre-compiled package.




回答2:


I had a similar error when trying to publish HTML from RStudio to RPubs.

Reinstalling curl didn't solve the issue for me, but this did the trick:

install.packages("RCurl")



来源:https://stackoverflow.com/questions/50083824/twitter-r-package-usr-lib-x86-64-linux-gnu-libcurl-so-4-version-curl-openssl

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!