Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux下R包的安装位置逻辑_Linux_R - Fatal编程技术网

Linux下R包的安装位置逻辑

Linux下R包的安装位置逻辑,linux,r,Linux,R,不同R包的不同安装位置背后的逻辑是什么?我似乎在linux机器上的几个不同位置安装了软件包。这是典型的行为吗?如果是,在/usr/lib/R/libraryvs/usr/lib/R/site library中安装软件包的理由是什么?我真的不在乎软件包安装在哪里,但在我的系统中把安装分散在不同的位置似乎有点傻 Renviron有下面的评论,这似乎表明/usr/lib/R/site library是针对Debian打包包的,但没有真正解释其他两个目录的用途。另外,通过将/usr/lib/R/libr

不同R包的不同安装位置背后的逻辑是什么?我似乎在linux机器上的几个不同位置安装了软件包。这是典型的行为吗?如果是,在
/usr/lib/R/library
vs
/usr/lib/R/site library
中安装软件包的理由是什么?我真的不在乎软件包安装在哪里,但在我的系统中把安装分散在不同的位置似乎有点傻

Renviron
有下面的评论,这似乎表明
/usr/lib/R/site library
是针对Debian打包包的,但没有真正解释其他两个目录的用途。另外,通过将
/usr/lib/R/library
设置为列表中的最后一个,是否会使其不是
install.packages()
的默认目录

马特

从特定版本(Debian/Ubuntu)到通用版本(所有Linux发行版)的概括方式是错误的

这个特别的设置是由两个使用R核心成员的Debian向我建议的(这是在Ubuntu出现之前)。这不是一个R范围的建议,这就是为什么您在手册中找不到它的原因,而是R高级用户提出的在Debian和类似Debian的系统上实施的具体建议

基本思想是

  • 完全忠实于分离
    /usr/
    /var/
    。。。。一方面由包装管理系统(例如,
    apt get
    dpkg
    ,…)处理,另一方面由用户处理:
    /usr/local/..
    等:这两个系统不得混合使用

  • 因此,
    /usr/local/lib/R/site library
    将获得由
    .libPaths()
    发出的列表中的第一个位置,并因此成为默认值,从而确保用户安装的软件包最终低于上一点所述的
    /usr/local/

  • 因此,在下面的
    /usr
    中,我们在
    /usr/lib/R/library
    中分离了推荐的R包(也包括在基本R源代码中:
    boot
    grid
    lattice
    ,…),然后所有其他包管理控制
    r-cran-*
    下面的包
    /usr/lib/r/site library
    。例如,
    r-cran-xml
    在那里结束,或者
    r-cran-zoo
    ,或者

我仍然认为拆分非常好,这就是为什么我在Debian R软件包中维护这个设置


在多用户操作系统上,让所有用户都能使用本地软件包是个好主意。

好的,谢谢。我想这可能是我作为一个相对较新的Linux(Ubuntu)用户没有理解的分裂的原因。
# edd Apr 2003  Allow local install in /usr/local, also add a directory for
#               Debian packaged CRAN packages, and finally the default dir 


> .libPaths()
[1] "/usr/local/lib/R/site-library" "/usr/lib/R/site-library"      
[3] "/usr/lib/R/library"