在我自己的目录中安装R

在我自己的目录中安装R

如何在我自己的目录中安装新版本的 R,例如/local/data/project/behi.

答案1

最简单的方法是安装 R从源头:

$ wget http://cran.rstudio.com/src/base/R-3/R-3.4.1.tar.gz
$ tar xvf R-3.4.1.tar.gz
$ cd R-3.4.1
$ ./configure --prefix=$HOME/R
$ make && make install

倒数第二步是关键的一步。它将 R 配置为安装到您自己的主目录的子目录中。

要在 Linux、macOS 和类似系统上运行它,请将其添加$HOME/R/bin到您的PATH.然后,像R和这样的 shell 命令Rscript就可以工作了。

在 macOS 上,您还有另一种选择:建造R.app并将其安装到您用户的私人Applications文件夹中。您需要安装 Xcode 才能执行此操作。

你可以考虑给予--prefix=$HOME。这会将 R 安装在您的主目录的顶层,以便RRscript二进制文件最终位于$HOME/bin,这可能已经在您用户的PATH.缺点是它会使以后的卸载更加困难,因为 R 会与其他$HOME内容混合在一起。

(如果这是您安装到 的第一个东西$HOME/bin,您可能必须注销并重新登录才能将其添加到您的 中PATH,因为它通常只有$HOME/bin在登录时存在时才会有条件地添加。)

这种通用模式适用于可以从源代码安装的大量 Unix 软件。如果软件有configure脚本,它可能理解该--prefix选项,如果没有,通常有一些具有相同效果的替代方案。

由于多种原因,这些功能很常见。根据我的经验,按照可能性降序排列:

  • 安全默认值 ( ) 并非在所有情况下都/usr/local正确。$prefix情况可能会决定其他事情,例如/usr/opt/$PKGNAME等等。

  • 二进制包构建系统(转速,DEB,包装袋,赛格波特...)通常会构建包并将其安装到特殊的暂存目录中,然后将其打包以使其扩展到所需的安装位置。

  • 您的情况是,您无法root将软件安装到典型位置,因此您$HOME只能安装到。

答案2

您还可以使用包装应用程序租金

摘抄

简单的 R 版本管理:Renv

Renv 可让您轻松地在 R 的多个版本之间切换。它简单、不引人注目,并且遵循 UNIX 单一用途工具只做好一件事的传统。

Renv确实……

  • 让您可以根据每个用户更改全局 R 版本。
  • 为每个项目的 R 版本提供支持。
  • 允许您使用环境变量覆盖 R 版本。

答案3

从源代码构建./configure --prefix=/local/data/project/behi ; make ; make install

如果您从 RPM 软件包安装并且它被创建为可重定位的,您可以使用

rpm ... --prefix /local/data/project/behi

但并非所有软件包都是使用可重定位二进制文​​件构建的,并且我认为 debian 软件包没有此选项(尽管您可能会成功dpkg --instdir)。

相关内容