RHOME
Far be it for me to tell people what they can and cannot do. Perhaps I can rephrase myself in a less inflammatory way. R runs from the build directory as a convenience for developers, so you don't have to reinstall R every time you change something. But for users, the standard mechanism "make install" has a number of advantages over moving the build directory to a publicly accessible location: it is guaranteed to work, you don't have to do any post-hoc editing of files, it takes up a lot less space, about 4.6 times less on my system [martyn at seurat r-devel]$ du -sh R 356M R [martyn at seurat r-devel]$ du -sh /usr/local/lib64/R 77M /usr/local/lib64/R But if you do want to copy the build directory the, as Martin says, you can edit the file bin/R so that the line that starts R_HOME_DIR points to the correct location, e.g. R_HOME_DIR="/usr/local/lib/R" M.
On Fri, 2006-02-03 at 14:48 +0100, Peter Dalgaard wrote:
Martin Maechler <maechler at stat.math.ethz.ch> writes:
Martyn> R is designed to run from its build directory. But
Martyn> if your sysadmin installs it with "make install" (as
Martyn> root), then the shell wrapper that is installed in
Martyn> /usr/local/bin/R will have R_HOME pointing to the
Martyn> right location (/usr/local/lib/R). Literally moving
Martyn> the build directory to another location is the wrong
Martyn> thing to do.
well, but very easily fixable, and that's what Daniel is asking
for:
The default value of R_HOME is only set in exactly one place,
namely the 'R' shell script; editing that script - once after
the move - is really a piece o'cake.
Hmm, I was about to say the same, but there seems to be unexpected references in other places. find `R RHOME` | xargs grep `R RHOME` /usr/lib64/R/bin/R:R_HOME_DIR=/usr/lib64/R /usr/lib64/R/bin/R:R_SHARE_DIR=/usr/lib64/R/share /usr/lib64/R/bin/R:R_INCLUDE_DIR=/usr/lib64/R/include /usr/lib64/R/bin/R:R_DOC_DIR=/usr/lib64/R/doc (this doesn't normally happen - a SUSE RPM specialty, or due to configure flag settings?)
I think this is normal. But the RedHat RPM behaves differently. (because the RPM build process installs into a temporary build root which is distinct from the final installation directory, requiring more sed voodoo).
Once you start building packages, you also have things like viggo:~/>find ~/Rlibrary | xargs grep `R RHOME` Binary file /home/bs/pd/Rlibrary/rgl/libs/rgl.so matches viggo:~/>find ~/Rlibrary | xargs grep Rlibrary Binary file /home/bs/pd/Rlibrary/rgl/Meta/hsearch.rds matches Binary file /home/bs/pd/Rlibrary/ISwR/Meta/hsearch.rds matches Binary file /home/bs/pd/Rlibrary/mvtnorm/Meta/hsearch.rds matches Binary file /home/bs/pd/Rlibrary/nlmeODE/Meta/hsearch.rds matches B..... on my laptop I had a hit on one of the Sweave support files too. Most likely these are quite harmless, but all in all I think Martyn has the safest advice: Use "make install", as root (don't forget "umask 022").
-----------------------------------------------------------------------
This message and its attachments are strictly confidential. ...{{dropped}}