CRAN 的 MacOS 的自制 R 和“标准”R 可以共存吗?
Posted
技术标签:
【中文标题】CRAN 的 MacOS 的自制 R 和“标准”R 可以共存吗?【英文标题】:Can homebrew R and "standard" R for MacOS from CRAN coexist? 【发布时间】:2019-11-25 11:30:09 【问题描述】:我在运行 Sierra 的 Mac Mini 和运行 El Capitan 的 MacBook Pro 上运行 R 3.6.1
。我通常会从 CRAN 或 github
获得我需要的所有 R
软件包并毫无问题地使用它们,但我正在尝试安装和使用需要 fortran
编译器和这给了我问题。即使安装了gfortran
,R
包仍然不起作用(fortran
代码似乎编译成功但包安装失败)。软件包开发者建议通过homebrew
安装R
可能会解决问题。相反,我的预感是它会导致一个痛苦的世界,引用大莱博夫斯基的沃尔特的话。我的问题是:
-
与从 CRAN 安装的“常规”版本相比,MacOSX 的 R 的自制版本有什么优势?
两个版本可以共存吗?
自制版本会影响普通版本吗?
最后:自制软件会有所帮助还是会简单地打开一个整体 新的蠕虫罐头?
非常感谢。
【问题讨论】:
看看这里:owsiak.org/r-3-4-rjava-macos-and-even-more-mess也许这个对你有帮助。 记录在案:我描述的问题仍然存在于运行 El Capitan 的笔记本电脑上的 R 3.6.1 for Mac(来自 CRAN)上。相反,我设法在运行 Sierra 的 Mac Mini 上安装了该软件包。首先,我继续在其上安装自制软件,但我没有安装自制软件 R。相反,我安装了适用于 Sierra 的 gfortran,然后在从 CRAN 下载的适用于 Mac 的常规 R 3.6.1 上安装了 NicheMapR,这一次它工作了。我不知道安装自制软件是否会有所作为,也不知道为什么我的另一台机器上仍然存在问题,但这是领先一步。 【参考方案1】:是的,从homebrew
安装是一个痛苦的秘诀。官方 CRAN 二进制维护者特别建议不要使用它,请参阅 his remarks from March 2016 on r-sig-mac
。
关于您的问题,可以总结为:
R for MacOSX 的自制版本与从 CRAN 安装的“常规”版本相比有什么优势?
积极因素:选择您自己的 BLAS 并轻松使用地理空间工具。
缺点:总是需要编译每个R包。
这两个版本可以共存吗?
是的。 homebrew
版本安装到不同的目录中。但是,请注意库冲突(请参阅下一个问题)。但是,您将不得不处理有关可从控制台访问哪个版本的 R 的符号链接,并且您还需要考虑使用 RSwitch 在 R 之间切换版本。
是的,如果库路径重叠。包安装和加载会有问题。确保设置不同的库路径。为此,请查看.libPaths() documentation。自制版本会影响普通版本吗?
最后:自制软件会有所帮助,还是会简单地打开一个全新的蠕虫罐?
是的,不是的。除非您知道自己在做什么,否则请选择 R 的 CRAN 版本及其各种好东西。
【讨论】:
等等——你说“总是需要编译每个 R 包”是使用自制软件的一个缺点。在 Mac OS 上,我们不是总是需要从源代码编译 R 包吗? @KenWilliams CRAN 如果在 macOS 或 Windows 上为您执行此操作。只有 Linux 用户需要从源代码编译。不过,随着 RStudio 的包管理器的引入,可以为流行的 linux 发行版获取二进制文件。 我这辈子的知识在哪里!以上是关于CRAN 的 MacOS 的自制 R 和“标准”R 可以共存吗?的主要内容,如果未能解决你的问题,请参考以下文章
CRAN 包检查和 R CMD 检查-as--cran 之间的差异
如何将我的时区设置为太平洋标准时间? https://cran.cnr.berkeley.edu/