Friday, May 11, 2012

CentOs R Install

I've recently been using the ODU CS "fast" alias for some of my work because the machines are equipped with R and my data is accessible withing the network. However, I found the need to use the rollmean library to calculate area under the curve. To install this package, I needed sudo privileges, which I don't have on the fast machines. So, I turned to our research machines, which use the CentOs operating system. This posting outlines how to overcome some of the issues I ran into during this 2-day install (and also why I use Ubuntu at home!).

The easiest way I knew to install R is to run the yum install command:

sudo yum install R

However, this gave the following errors:

$ sudo yum install R
...
---> Package compat-libgfortran-41.x86_64 0:4.1.2-39.el6 will be installed
--> Finished Dependency Resolution
Error: Package: R-devel-2.15.0-1.el5.x86_64 (epel)

Requires: texinfo-tex Error: Package: R-core-2.15.0-1.el5.x86_64 (epel)
Requires: libtcl8.4.so()(64bit)
Error: Package: R-core-2.15.0-1.el5.x86_64 (epel)
Requires: libtk8.4.so()(64bit)
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest


After an hour or two of tracking down all of the dependencies, I decided to try to run the install from the R-2.10.* subversion source. I downloaded the tar.gz, unpacked it, and tried the installation commands from the R guidelines, but the ./configure command provided the following error:

configure: error: --with-readline=yes (default) and headers/libs are not available

This requires the libread-devel package, which can be installed with yum:

yum install libread-devel

Then, the ./configure command and subsequent make commands worked well.

Finally, this put the R program at /usr/local/bin/R on this machine. I just make a few links to that location and everything work well!

I hope this saves someone else a headache in the future (or at least two days of work). Here are other resources I found useful:

A good posting about the libread error.
R help entry about the error.
Another R help entry about the error.
Instructions about installing R, but more importantly, adding the epel repository to yum.