If you try to import it you'll get something like this:
$ python Python 2.7.4 (default, Apr 19 2013, 18:28:01) [GCC 4.7.3] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import rpy2 >>> import rpy2.rinterface Traceback (most recent call last): File "", line 1, in File "/usr/lib/python2.7/dist-packages/rpy2/rinterface/__init__.py", line 93, in from rpy2.rinterface._rinterface import * ImportError: /usr/lib/python2.7/dist-packages/rpy2/rinterface/_rinterface.so: undefined symbol: Rf_PrintWarnings
However, the solution is pretty straightforward.
First download the source for rpy2 2.3.1. Then extract it and edit the file rpy2-2.3.1/rpy/rinterface/_rinterface.c. Then comment out the following on lines 1764-1765:
extern void Rf_PrintWarnings(void); Rf_PrintWarnings(); /* show any warning messages */
Such that it appears as:
//extern void Rf_PrintWarnings(void); //Rf_PrintWarnings(); /* show any warning messages */
Change to the rpy2-2.3.1 directory where you extracted the source to and reinstall rpy2 using:
sudo python setup.py install
Which should allow it to work again.
$ python Python 2.7.4 (default, Apr 19 2013, 18:28:01) [GCC 4.7.3] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import rpy2 >>> import rpy2.rinterface >>>
You won't get any of the warning messages that Rf_PrintWarnings() would have output when it calls an R function. This has already been fixed in the development branch but this quick fix means you don't have to wait for an official update to get rpy2 running again.