R 中的包 rgl 未在 Mac OS 中加载

问题描述

我在 R (3.6.3) 中安装了 rgl 包 (0.104.16),但它没有加载。我没有收到任何错误。它永远不会结束加载。我尝试重新安装 R 和 RStudio 以及 Xquartz。没有任何工作。我有 Mac OS Catalina 版本 10.15.7。 任何帮助将不胜感激! 干杯

解决方法

编辑以添加新的细节和建议的修复。

这似乎是由于 2 月初发布的 Xquartz 2.8.0beta 版本存在问题。有两个问题:

  • 它对 libX11.6.dylib 进行了不兼容的更改,因此为 2.7.11 版本构建的程序(如 rgl 的 CRAN 二进制文件)将无法运行。如果您从源代码构建 rgl(以及使用 X11 的所有其他内容),那可能没问题——这是给我的。

  • 当您卸载它时,它会留下两个在启动时运行的程序:/Library/LaunchDaemons/org.xquartz.startx.plist(在您重新启动系统时运行)和 /Library/LaunchAgents/org.xquartz.startx.plist(在您登录时运行)。如果您随后安装 2.7.11,这些将无法运行(可能是因为上面提到的 libX11 更改)。在这一点上,X11 中的任何内容都不起作用。

所以解决方案似乎是:

  • 将 XQuartz 从 Applications/Utilities 文件夹拖到垃圾箱中以将其卸载。
  • 通过在 R 中运行 rgl 卸载 remove.packages("rgl")
  • org.xquartz.startx.plist/Library/LaunchDaemons 中删除名为 /Library/LaunchAgents 的两个文件。
  • 重新启动系统以删除从这些文件启动的进程。
  • 重新安装 XQuartz 2.7.11。
  • 从 CRAN 或从源重新安装 rgl

如果我错了并且该过程不起作用,那么只要您的 rgl 版本至少为 0.105.12(但不会给您任何 rgl窗户):

# Start a new session
options(rgl.useNULL = TRUE)
library(rgl)

要查看您的显示,请运行 rglwidget() 函数,它们将显示在浏览器或 RStudio 查看器窗格中。

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...