5

我使用 brew 在 OSX 10.7.5 服务器上安装了 R:

brew install R

到目前为止一切似乎都很好,但是开罗没有工作:

> svg(tempfile())
Warning messages:
1: In svg(tempfile()) :
  unable to load shared object '/usr/local/Cellar/r/2.15.2/R.framework/Resources/library/grDevices/libs//cairo.so':
  dlopen(/usr/local/Cellar/r/2.15.2/R.framework/Resources/library/grDevices/libs//cairo.so, 6): image not found
2: In svg(tempfile()) : failed to load cairo DLL

共享对象文件似乎完全丢失了:

id-86-243:Resources jeroen$ ls -ltr library/grDevices/libs/
total 488
-rwxrwxr-x  1 jeroen  admin  245764 Dec 22 17:03 grDevices.so

我很少使用 OSX,所以我不太确定这是否是这个特定 R 发行版中的错误,或者我在构建它时做错了什么?

4

2 回答 2

9

我刚刚遇到了这个问题。在 R 配置阶段pkg-config定位似乎是一个问题。cairo解决方法似乎是:

export PKG_CONFIG_PATH=/opt/X11/lib/pkgconfig

以便 R 可以正确使用cairo.

我直接从源代码安装 R,而不是使用homebrew.,但我确实用于homebrew使其他库保持最新。这解决了我的问题。

作为参考,我正在运行 OSX Mavericks。

于 2013-12-10T22:45:22.317 回答
1

最终对我有用的是使用 cairo 显式构建 R(brew 的默认 R 水龙头使用--without-cairo并简单地编辑水龙头并不能解决我的问题)。

这一切都在这篇精彩的博客文章中进行了解释:https ://luispuerto.net/blog/2018/05/11/installing-r-with-homebrew-with-all-the-capabilities/

在 macOS Catalina 10.15.6 下使用 R 4.0.2、cairo 1.16.0_3 对我来说就像一个魅力。

于 2020-10-09T13:37:03.267 回答