在Mac OSX El Captian中安装R语言的"rgl"包

12

我刚开始接触R编程,如果我的问题显得很幼稚,请多多包涵。我想对我的三维数据进行主成分分析。我读到“pca3d”函数对此很有用,但我需要下载“rgl”库。当我使用install.packages时,会出现以下提示:

install.packages("rgl")

  There is a binary version available but the source version is later:
   binary    source needs_compilation
rgl 0.95.1201 0.95.1367              TRUE

Do you want to install from sources the package which needs compilation?
y/n: n

我已经尝试过二进制和源码两种方式安装,但似乎都不起作用。如果我尝试加载二进制版本,就会出现以下错误:

I have tried installing it as both binary and source, but nothing seems to work. If I try loading the binary version, I get this error:

Error : .onLoad failed in loadNamespace() for 'rgl', details:
  call: dyn.load(file, DLLpath = DLLpath, ...)
error: unable to load shared object '/Library/Frameworks/R.framework/Versions/3.2/Resources/library/rgl/libs/rgl.so':
dlopen(/Library/Frameworks/R.framework/Versions/3.2/Resources/library/rgl/libs/rgl.so, 6): Library not loaded: /opt/X11/lib/libGLU.1.dylib
Referenced from: /Library/Frameworks/R.framework/Versions/3.2/Resources/library/rgl/libs/rgl.so
  Reason: image not found
Error: package or namespace load failed for ‘rgl’

如果我选择从源代码安装,会出现以下错误:

configure: error: X11 not found but required, configure aborted.
ERROR: configuration failed for package ‘rgl’
* removing ‘/Library/Frameworks/R.framework/Versions/3.2/Resources/library/rgl’
* restoring previous ‘/Library/Frameworks/R.framework/Versions/3.2/Resources/library/rgl’
Warning in install.packages :
 installation of package ‘rgl’ had non-zero exit status

我已经花了几个小时搜索如何让这个工作,如果有人能够指导我如何安装rgl包,我将非常感激!

谢谢, Claire


2
首先,错误信息表明它正在寻找但找不到X11,因此第一步可能是安装X11。 - joran
你可以尝试在install.packages函数中添加非默认参数repos,使其变成这样:install.packages("rgl", repos='http://cran.cnr.berkeley.edu/')。注: 抱歉,请删除http和*:*符号之间的空格。 - hamsternik
4个回答

17

和同事交流后,我只需要从这里下载XQuartz安装X11,然后重新安装源代码包。现在它可以正常工作了!


4
下载XQuartz后,我浪费了几个小时试图解决这个问题,但它完全解决了问题。

1

我最初将软件包下载到桌面上,但是R给了我同样的错误,这是在我的Mac上起作用的方法:

install.packages("rgl", lib="Desktop/rgl_0.96.0 (1).tgz") 警告:install.packages: 'lib = "Desktop/rgl_0.96.0 (1).tgz"' 不可写 你想使用个人库吗? (y/n) y 你想创建个人库 ~/Library/R/3.3/library 来安装软件包吗? (y/n) y


1
在我的情况下,不仅需要安装XQuartz,还需要手动打开XQuartz.app,然后运行install.packages("rgl")。只有这样,R才能找到X11...

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接