如何在/ etc / profile中设置R环境?

时间:2012-07-29 01:30:39

标签: r environment

我的os是debian6,编译安装R后有一个libR.pc

root@debian:/home/tiger# cat /home/tiger/R-2.15.1/lib/pkgconfig/libR.pc  
rhome=/home/tiger/R-2.15.1/lib/R  
rlibdir=${rhome}/lib  
rincludedir=/home/tiger/R-2.15.1/lib/R/include  
Name: libR  
Description: R as a library  
Version: 2.15.1  
Libs: -L${rlibdir} -lR  
Cflags: -I${rincludedir} -I${rincludedir}  
Libs.private:  

在/ etc / profile中设置R环境时:
R_HOME = /home/tiger/R-2.15.1

R_HOME = /home/tiger/R-2.15.1/lib/R
我会选择在/ etc / profile中写哪一行?

2 个答案:

答案 0 :(得分:1)

在Debian(或Ubuntu系统等衍生产品)上,您/etc/R/设置R使用的变量:

edd@max:~$ ls -l /etc/R/
total 28
-rw-r--r-- 1 root root  602 Jun 17 20:29 ldpaths
-rw-r--r-- 1 root root 5461 Jun 17 20:29 Makeconf
-rw-r--r-- 1 root root 1868 Mar 31 13:50 Renviron
-rw-r--r-- 1 root root  608 Sep 25  2009 Renviron.site
-rw-r--r-- 1 root root 1159 Mar 31 08:03 repositories
-rw-r--r-- 1 root root  792 Oct 28  2009 Rprofile.site
edd@max:~$ 

并且R_HOME/etc/中的文件应该是软链接 - 至少如果您使用预构建的二进制文件。如果你构建自己的二进制文件,那就是你的问题。

您引用的文件在Debian / Ubuntu系统上安装为/usr/lib/pkgconfig/libR.pc。设置R_HOME ,因为R找到了自己的值(请参阅@ flodel的回答)。

答案 1 :(得分:0)

在我的系统上:

cat $R_HOME

什么都没有,但在R会话中,我得到了:

> Sys.getenv("R_HOME")
[1] "/usr/lib/R"

这应该告诉你两件事:

  1. {R}启动时设置为R_HOME,因此,除非您确切知道自己在做什么,否则您可能无需在/etc/profile中进行设置。
  2. 您可以使用Sys.getenv查找R_HOME
  3. 的确切路径