我正在尝试在我的RStudio中安装devtools
。但是我遇到了很多错误:
* installing *source* package ‘curl’ ...
** package ‘curl’ successfully unpacked and MD5 sums checked
Package libcurl was not found in the pkg-config search path.
Perhaps you should add the directory containing `libcurl.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libcurl' found
Package libcurl was not found in the pkg-config search path.
Perhaps you should add the directory containing `libcurl.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libcurl' found
Using PKG_CFLAGS=
Using PKG_LIBS=-lcurl
------------------------- ANTICONF ERROR ---------------------------
Configuration failed because libcurl was not found. Try installing:
* deb: libcurl4-openssl-dev (Debian, Ubuntu, etc)
* rpm: libcurl-devel (Fedora, CentOS, RHEL)
* csw: libcurl_dev (Solaris)
If libcurl is already installed, check that 'pkg-config' is in your
PATH and PKG_CONFIG_PATH contains a libcurl.pc file. If pkg-config
is unavailable you can set INCLUDE_DIR and LIB_DIR manually via:
R CMD INSTALL --configure-vars='INCLUDE_DIR=... LIB_DIR=...'
--------------------------------------------------------------------
ERROR: configuration failed for package ‘curl’
* removing ‘/home/lau/R/x86_64-pc-linux-gnu-library/3.4/curl’
Warning in install.packages :
installation of package ‘curl’ had non-zero exit status
* installing *source* package ‘openssl’ ...
** package ‘openssl’ successfully unpacked and MD5 sums checked
Using PKG_CFLAGS=
Using PKG_LIBS=-lssl -lcrypto
------------------------- ANTICONF ERROR ---------------------------
Configuration failed because openssl was not found. Try installing:
* deb: libssl-dev (Debian, Ubuntu, etc)
* rpm: openssl-devel (Fedora, CentOS, RHEL)
* csw: libssl_dev (Solaris)
* brew: openssl@1.1 (Mac OSX)
If openssl is already installed, check that 'pkg-config' is in your
PATH and PKG_CONFIG_PATH contains a openssl.pc file. If pkg-config
is unavailable you can set INCLUDE_DIR and LIB_DIR manually via:
R CMD INSTALL --configure-vars='INCLUDE_DIR=... LIB_DIR=...'
--------------------------------------------------------------------
ERROR: configuration failed for package ‘openssl’
* removing ‘/home/lau/R/x86_64-pc-linux-gnu-library/3.4/openssl’
Warning in install.packages :
installation of package ‘openssl’ had non-zero exit status
* installing *source* package ‘git2r’ ...
** package ‘git2r’ successfully unpacked and MD5 sums checked
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for library containing inflate... -lz
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for libssl... no
configure: WARNING: "pkg-config failed to find libssl."
checking for library containing EVP_EncryptInit... no
configure: error: in `/tmp/RtmpWzaIce/R.INSTALL67fa335a4d20/git2r':
configure: error:
---------------------------------------------
The OpenSSL library that is required to
build git2r was not found.
Please install:
libssl-dev (package on e.g. Debian and Ubuntu)
openssl-devel (package on e.g. Fedora, CentOS and RHEL)
openssl (Homebrew package on OS X)
and try again.
If the OpenSSL library is installed on
your system but the git2r configuration
is unable to find it, you can specify
the include and lib path to OpenSSL with:
R CMD INSTALL --configure-args='--with-libssl-include=INCLUDE_PATH --with-libssl-lib=LIB_PATH' git2r
---------------------------------------------
See `config.log' for more details
ERROR: configuration failed for package ‘git2r’
* removing ‘/home/lau/R/x86_64-pc-linux-gnu-library/3.4/git2r’
Warning in install.packages :
installation of package ‘git2r’ had non-zero exit status
ERROR: dependencies ‘curl’, ‘openssl’ are not available for package ‘httr’
* removing ‘/home/lau/R/x86_64-pc-linux-gnu-library/3.4/httr’
Warning in install.packages :
installation of package ‘httr’ had non-zero exit status
ERROR: dependencies ‘httr’, ‘git2r’ are not available for package ‘devtools’
* removing ‘/home/lau/R/x86_64-pc-linux-gnu-library/3.4/devtools’
Warning in install.packages :
installation of package ‘devtools’ had non-zero exit status
The downloaded source packages are in
‘/tmp/RtmpzxXdFr/downloaded_packages’
所以我尝试安装libcurl
:
> install.packages("libcurl")
Installing package into ‘/home/lau/R/x86_64-pc-linux-gnu-library/3.4’
(as ‘lib’ is unspecified)
Warning in install.packages :
package ‘libcurl’ is not available (for R version 3.4.0)
> install.packages("curl")
我在Ubuntu 17.04上。和R 3.4。
我有什么想法可以解决这个问题吗?
答案 0 :(得分:9)
错误消息可能有点令人困惑,因为RStudio要求您为Linux操作系统安装libcurl和openssl库;对于那些你真正需要Ubuntu包而不是R包的人。
打开命令行终端,然后键入
sudo apt-get install libcurl4-openssl-dev libssl-dev
完成Ubuntu软件包的安装后,再试一次,您就可以安装devtools R软件包了
答案 1 :(得分:2)
我们可以使用
sudo apt-get install libssl-dev
答案 2 :(得分:1)
您的问题包含答案:-
Configuration failed because openssl was not found. Try installing:
* deb: libssl-dev (Debian, Ubuntu, etc)
* rpm: openssl-devel (Fedora, CentOS, RHEL)
* csw: libssl_dev (Solaris)
* brew: openssl@1.1 (Mac OSX)
答案 3 :(得分:0)
错误讯息: 在pkg-config搜索路径中找不到包libcurl。也许你应该添加包含`libcurl.pc'
的目录执行此命令:
rpm -qa | grep curl
结果
python-pycurl-7.19.0-19.el7.x86_64
curl-7.29.0-42.el7_4.1.x86_64
libcurl-7.29.0-42.el7_4.1.x86_64
-->libcurl-devel-7.29.0-42.el7_4.1.x86_64 <---this entry was missing
执行此命令
yum install libcurl-devel
问题解决了。
答案 4 :(得分:0)
以上答案均不适用于使用 R版本3.6.1
的 Ubuntu 18.04.3 LTS我的猜测是,这可能与Anaconda3
有关...
对我有用的是:
conda install -c r r-devtools
然后在R
install.packages("rlang")
install.packages("devtools")
我应该提到conda作为R的软件包管理器可以很好地工作,但是您应该尽可能坚持conda, ie 不要在R
中安装软件包,但要使用conda-forge
,bioconda
和defaults
渠道(开源渠道)的CONDA(除非该包装没有配方);请注意不要与专有渠道(例如 anaconda
,r
)混合使用。
如果需要的软件包在您使用的通道集中不可用,则必须手动将它们安装在conda环境之外的外部位置。例如,.libPaths()
显示我有两个库:
/home/tsundoku/anaconda3/lib/R/library
#存储anaconda软件包的位置/usr/lib/R/library
#我将包裹存储在外部位置的地方有关管理.libPaths()
的详细信息,请参见@MilesMcBain的blog-post here