Problems installing the devtools package
我希望使用
1 2 3 4 | > install.packages("devtools", dependencies = TRUE) .... > library(devtools) Error in library(devtools) : there is no package called ‘devtools’ |
我究竟做错了什么?
编辑:这是重新启动会话后重新运行
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | > install.packages("devtools", dependencies = TRUE) Installing package into ‘/home/evanaad/R/x86_64-pc-linux-gnu-library/3.0’ (as ‘lib’ is unspecified) --- Please select a CRAN mirror for use in this session --- Warning: dependencies ‘roxygen2’, ‘BiocInstaller’, ‘rstudio’ are not available also installing the dependencies ‘httr’, ‘RCurl’ trying URL 'http://cran.at.r-project.org/src/contrib/httr_0.2.tar.gz' Content type 'application/x-gzip' length 50183 bytes (49 Kb) opened URL ================================================== downloaded 49 Kb trying URL 'http://cran.at.r-project.org/src/contrib/RCurl_1.95-4.1.tar.gz' Content type 'application/x-gzip' length 870915 bytes (850 Kb) opened URL ================================================== downloaded 850 Kb trying URL 'http://cran.at.r-project.org/src/contrib/devtools_1.4.1.tar.gz' Content type 'application/x-gzip' length 105214 bytes (102 Kb) opened URL ================================================== downloaded 102 Kb * installing *source* package ‘RCurl’ ... ** package ‘RCurl’ successfully unpacked and MD5 sums checked checking for curl-config... no Cannot find curl-config ERROR: configuration failed for package ‘RCurl’ * removing ‘/home/evanaad/R/x86_64-pc-linux-gnu-library/3.0/RCurl’ ERROR: dependency ‘RCurl’ is not available for package ‘httr’ * removing ‘/home/evanaad/R/x86_64-pc-linux-gnu-library/3.0/httr’ ERROR: dependencies ‘httr’, ‘RCurl’ are not available for package ‘devtools’ * removing ‘/home/evanaad/R/x86_64-pc-linux-gnu-library/3.0/devtools’ The downloaded source packages are in ‘/tmp/RtmptvmTrA/downloaded_packages’ Warning messages: 1: In install.packages("devtools", dependencies = TRUE) : installation of package ‘RCurl’ had non-zero exit status 2: In install.packages("devtools", dependencies = TRUE) : installation of package ‘httr’ had non-zero exit status 3: In install.packages("devtools", dependencies = TRUE) : installation of package ‘devtools’ had non-zero exit status |
按照damienfrancois的建议,我安装了libcurl4-gnutls-dev并解决了问题。
编辑(@dardisco)
在您的外壳中:
1 2 | apt-get -y build-dep libcurl4-gnutls-dev apt-get -y install libcurl4-gnutls-dev |
如果您使用的是Ubuntu / Linux:
1 | sudo apt-get install libcurl4-openssl-dev libssl-dev |
如果您使用的是CentOS:
尝试:
1 | sudo yum -y install libcurl libcurl-devel |
对于ubuntu用户,请在终端机上运行此命令[在UBUNTU 16.04中测试]
1 | sudo apt-get -y install libcurl4-openssl-dev |
使用您通常在R中使用的方式发布此安装库
1 | install.packages("package name") |
如今(ubuntu 14.04)我同时需要:
1 2 | $ sudo apt-get -y install libcurl4-gnutls-dev $ sudo apt-get -y install libssl-dev |
对于我的Debian Jessie盒子,我还包括:
1 | sudo apt-get build-dep libxml2-dev |
提示:R工具控制台的输出非常冗长,因此我将检查是否存在其他依赖项。
然后,我终于明白了:
1 2 | > find_rtools() [1] TRUE |
我在Ubuntu 18.04上遇到了这个问题,以前的答案都没有解决它。最终,我通过包管理器本身安装了
解决此问题的最佳解决方案。我在搜索相同的问题。我花了1天,然后得到了解决方案。现在,很好。
如果您使用的是Ubuntu或Linux,请在bash终端中检查R版本。
1 | R --version |
然后使用这些命令
1 2 | sudo apt-get update sudo apt-get upgrade |
现在检查R的新版本。使用此命令
1 | sudo apt-cache showpkg r-base |
现在仅更新R。
1 | sudo apt-get install r-base |
现在,R将被更新,错误将被消除。确保
1 2 3 | R .libPaths("~/R/lib") install.packages("devtools") |
要么
1 | install.packages("devtools", lib="~/R/lib") |
以上答案均不适用于使用R版本3.6.1的Ubuntu 18.04.3 LTS
我的猜测是这可能与
对我有用的是:
1 | conda install -c r r-devtools |
然后在
1 2 | install.packages("rlang") install.packages("devtools") |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | R version 3.6.1 (2019-07-05) Platform: x86_64-conda_cos6-linux-gnu (64-bit) Running under: Ubuntu 18.04.3 LTS Matrix products: default BLAS/LAPACK: /home/tsundoku/anaconda3/lib/R/lib/libRblas.so locale: [1] LC_CTYPE=en_CA.UTF-8 LC_NUMERIC=C [3] LC_TIME=en_CA.UTF-8 LC_COLLATE=en_CA.UTF-8 [5] LC_MONETARY=en_CA.UTF-8 LC_MESSAGES=en_CA.UTF-8 [7] LC_PAPER=en_CA.UTF-8 LC_NAME=C [9] LC_ADDRESS=C LC_TELEPHONE=C [11] LC_MEASUREMENT=en_CA.UTF-8 LC_IDENTIFICATION=C attached base packages: [1] stats graphics grDevices utils datasets methods base loaded via a namespace (and not attached): [1] compiler_3.6.1 tools_3.6.1 tcltk_3.6.1 |
我在Windows上遇到了同样的问题。
我用下面的代码:
1 | install.packages("devtools", type ="win.binary") |
然后library(devtools)为我工作。
CentOS 7:
我已经安装了libcurl和gnutls开发软件包,但是在R中安装devtools时仍然出现"无法加载git2r.so"错误。我必须"重新安装"它们才能工作:
1 | sudo yum reinstall gnutls-devel.x86_64 |
我通过安装以下所有工具解决了许多问题,以获取可在Ubuntu 18.04.1上安装的devtools。
1 2 3 4 | sudo apt-get install libcurl4-openssl-dev sudo apt-get install libssl-dev sudo apt-get install libcurl4-gnutls-dev sudo apt-get install libxml2-dev |
CentOS 7:
我在这篇文章中尝试了解决方案
1 2 | sudo yum -y install libcurl libcurl-devel sudo yum -y install openssl-devel |
但是还不够。
在控制台中检查R错误给了我答案。在我的情况下,它缺少以下libxml-2.0(并且Console打印了带有不同Linux版本和其他可能R配置的程序包名称的说明)
1 | sudo yum -y install libxml2-devel |
Centos的6.8
这项工作对我来说就像魅力