错误可能比较罕见,分享出来也许有人也遇到呢,就起作用了。
install.packages("curl")
...
------------------------- 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=...'
需要的依赖系统已经安装,所以按照提示进行手动设置 LIB_DIR
路径。
$ apt-cache policy libcurl4-openssl-dev
libcurl4-openssl-dev:
Installed: 7.68.0-1ubuntu2.2
Candidate: 7.68.0-1ubuntu2.2
用 apt-file
寻找文件路径,如果是 Centos 系统用 yum provides
命令。这个在《Linux 寻找包含特定文件的包》里有讲解。
$ apt-file search libcurl.pc
libcurl4-gnutls-dev: /usr/lib/x86_64-linux-gnu/pkgconfig/libcurl.pc
libcurl4-nss-dev: /usr/lib/x86_64-linux-gnu/pkgconfig/libcurl.pc
libcurl4-openssl-dev: /usr/lib/x86_64-linux-gnu/pkgconfig/libcurl.pc
通过 configure.vars
参数进行指定。
install.packages("curl", configure.vars='LIB_DIR=/usr/lib/x86_64-linux-gnu/pkgconfig/')
原理?别问我,反正问题解决了,能继续搬砖就行。