1

由于编译错误,我无法安装此 R 包。我试试

install.packages("devtools")

并收到

/usr/bin/ld: skipping incompatible /usr/lib/libcurl.so when searching for -lcurl
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-redhat-linux/7/../../../libcurl.so when searching for -lcurl
/usr/bin/ld: skipping incompatible //lib/libcurl.so when searching for -lcurl
/usr/bin/ld: skipping incompatible //usr/lib/libcurl.so when searching for -lcurl
/usr/bin/ld: cannot find -lcurl
collect2: error: ld returned 1 exit status
make: *** [/usr/share/R/make/shlib.mk:6: curl.so] Error 1
ERROR: compilation failed for package ‘curl’
* removing ‘/home/laur/R/x86_64-redhat-linux-gnu-library/3.4/curl’

在线搜索发现通过安装 libcurl-devel 已经解决了类似的问题,但它没有帮助我,我现在有多个 32 位和 64 位版本:

sudo dnf -y install libcurl libcurl-devel

返回

Package libcurl-7.55.1-9.fc27.x86_64 is already installed, skipping.
Package libcurl-7.55.1-10.fc27.i686 is already installed, skipping.
Package libcurl-devel-7.55.1-10.fc27.i686 is already installed, skipping.

我也尝试安装 curl-config,但找不到。

4

2 回答 2

2

/usr/bin/ld: 搜索 -lcurl 时跳过不兼容的 //usr/lib/libcurl.so

/usr/bin/ld: 找不到 -lcurl

您缺少 64 位版本。# dnf install libcurl-devel.x86_64

libcurl-devel.x86_64 提供:/usr/bin/curl-config :64bit, /usr/lib 64 /libcurl.so , /usr/lib 64 /pkgconfig/libcurl.pc

于 2018-05-02T17:16:39.333 回答
0

我无法在 Fedora 27 上重现您的错误。但是,也许这会有所帮助:

如果已经安装了 libcurl,请检查 'pkg-config' 是否在您的 PATH 中,并且 PKG_CONFIG_PATH 包含 libcurl.pc 文件。如果 pkg-config 不可用,您可以通过以下方式手动设置 INCLUDE_DIR 和 LIB_DIR: R CMD INSTALL --configure-vars='INCLUDE_DIR=... LIB_DIR=...'

来自这里ANTICONF ERROR的一条消息。

编辑:与您的错误消息无关,但请确保您也运行sudo dnf -y install openssl-devel gnutls-devel

于 2018-05-02T16:24:00.670 回答