包“RCurl”的安装具有非零退出状态

installation of package ‘RCurl’ had non-zero exit status

我正在尝试在 OS X 10.12.6 上安装 RCurl,但出现以下错误:

Error: package or namespace load failed for ‘RCurl’ in dyn.load(file, DLLpath = DLLpath, ...):
 unable to load shared object '/Users/nick/Library/R/3.4/library/RCurl/libs/RCurl.so':
  dlopen(/Users/nick/Library/R/3.4/library/RCurl/libs/RCurl.so, 6): Library not loaded: @rpath/libcurl.4.dylib
  Referenced from: /Users/nick/Library/R/3.4/library/RCurl/libs/RCurl.so
  Reason: image not found
Error: loading failed
Execution halted
ERROR: loading failed
* removing ‘/Users/nick/Library/R/3.4/library/RCurl’

The downloaded source packages are in
    ‘/private/var/folders/hx/9xx9fwq91t95k45dzlmzxfy40000gp/T/Rtmp14zSi1/downloaded_packages’
Warning message:
In install.packages("RCurl") :
  installation of package ‘RCurl’ had non-zero exit status

这个错误已经讨论过了,但是解决方案都是针对 linux 的,我认为它们与 OS X 无关。我确实尝试安装自制版本curl 但这没有帮助。

有什么想法吗?我认为更多的调试信息会有所帮助,但我不确定还能提供什么。

提前致谢! 尼克

看起来它在你的 @rpath 中期待 libcurl.4.dylib

我想其他人也遇到过同样的问题,所以解决方案应该在这里:

如果它对遇到此问题的其他人有用,我解决了它而无需安装 R 的 cran 二进制文件。(我使用自制版本,因为它允许您使用利用并行性的更快的 BLAS 选项).步骤是:

  1. 确保 R 没有找到 curl-config 的 homebrew 或 anaconda 版本(这只会影响当前的 R 会话)

    PATH=/usr/bin/:$PATH
    
  2. http://www.omegahat.net/RCurl/ 下载并安装最新版本的 RCurl(将 <RCURLVERSION> 替换为当前最新版本)

    wget http://www.omegahat.net/RCurl/RCurl_<RCURLVERSION>.tar.gz
    R CMD INSTALL RCurl_<RCURLVERSION>.tar.gz
    

如果有人在 Ubuntu 中遇到与我相同的问题,解决方案是 运行 首先在终端中:

sudo apt-get install libcurl4-gnutls-dev

然后在 R 中:

install.packages('RCurl')