我的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中写哪一行?
答案 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"
这应该告诉你两件事:
R_HOME
,因此,除非您确切知道自己在做什么,否则您可能无需在/etc/profile
中进行设置。Sys.getenv
查找R_HOME
。