From simon.urbanek at r-project.org  Wed Feb 27 14:54:30 2013
From: simon.urbanek at r-project.org (Simon Urbanek)
Date: Wed, 27 Feb 2013 08:54:30 -0500
Subject: [Rd] Keeping up to date with R-devel
In-Reply-To: <CAHavPHF06qCEqiYqvCLOEfY_Zu9d8AWkyT7jKd0RnU=NmYeqqw@mail.gmail.com>
References: <CAHavPHF06qCEqiYqvCLOEfY_Zu9d8AWkyT7jKd0RnU=NmYeqqw@mail.gmail.com>
Message-ID: <E13F0A8B-2CAC-44F8-882B-EB35FCDE00B5@r-project.org>

On Feb 27, 2013, at 5:08 AM, Renaud wrote:

> Hi,
> 
> is checking out R SVN trunk the recommended way to keep up to date with
> R-devel and check packages with the latest version?
> 
> My objective is to be able to have both R and R-devel versions
> installed/working and up to date.
> R-devel binaries would be available as symlinks in my home directory so
> that I can do:
> 
> Rdevel CMD check mypkg
> Rdscript -e "some R code"
> 
> anywhere on my system.
> 
> So the workflow would be:
> 
> Only once:
> 
> svn co https://svn.r-project.org/R/trunk rdevel
> 
> Then in rdevel:
> 
> svn update
> 
> ./configure --prefix=~/bin/R-devel
> 

As the R-admin suggests it is recommended to not build in the source tree (this has been beaten to death on this list just recently).


> make
> 
> make install
> 

I prefer a different setup - changing the prefix means that in theory you are moving all your dependent libraries, system setting etc. there which is typically not always what you want. Instead I prefer leaving --prefix alone so you don't need to micro-manage everything and instead use rhome to point to the versioned install. This makes updating much easier IMHO since you just move the new tree in. But even if you point prefix to your home, the idea is that you keep the prefix fixed for all R versions and have only separate R_HOMEs.

make install DESTDIR=/tmp/dst rhome=/home/foo/R/devel

mkdir ~/R
mv /tmp/dst/home/foo/R/devel ~/R/
ln -sfn ~/R/devel/bin/R ~/bin/Rdevel

rm -rf /tmp/dst

typically, I also keep a "current" link ~/R/current -> devel and actually use
ln -sfn ~/R/current/bin/R ~/bin/R

This is just my personal preference, but it makes managing R versions across many machines and versions quite convenient.

You don't have to use DESTDIR if you want install to update the files, but I prefer a clean move to avoid pollution with old files or old packages.

Those are just some ideas that may or may not be useful to you.

Cheers,
Simon



> [Only after first compilation:
> cd ~/bin/; ln- s R-devel/bin/R Rdevel; ln- s R-devel/bin/Rscript Rdscript
> ]
> 
> Then build/check packages as usual, using Rdevel CMD instead of R CMD.
> Obviously contrib packages need to be installed/updated in Rdevel.
> 
> Can anybody see an issue in this workflow? Improvements? unneeded commands?
> possible conflcts in libraries?
> 
> Would be Is there any chance that the Linux binary repositories include
> Rdevel-base packages that would do all this and install R-devel system
> wide. It would be up to date via apt-get-like systems.
> Not sure how automatic it is to go from sources to .deb packages.
> 
> Thank you.
> 
> 	[[alternative HTML version deleted]]
> 
> ______________________________________________
> R-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
> 
> 



[Rd] Keeping up to date with R-devel
Simon Urbanek