Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Unable to install rJava in R 3.0 in Ubuntu 13.04

I am not able to call rJava package in R 3.0. I got the following message

Error: package ‘rJava’ was built before R 3.0.0: please re-install it 

I am getting error when I tried to re-install rJava package. I have provided the output of R CMD javareconf

Java interpreter : /usr/bin/java Java version     : 1.7.0_21 Java home path   : /usr/lib/jvm/java-7-openjdk-i386/jre Java compiler    : /usr/lib/jvm/java-7-openjdk-i386/jre/../bin/javac Java headers gen.: /usr/lib/jvm/java-7-openjdk-i386/jre/../bin/javah Java archive tool: /usr/lib/jvm/java-7-openjdk-i386/jre/../bin/jar  trying to compile and link a JNI progam  detected JNI cpp flags    :  detected JNI linker flags :  gcc -std=gnu99 -I/usr/share/R/include -DNDEBUG      -fpic  -O2 -pipe -g  -c conftest.c -o conftest.o conftest.c:1:17: fatal error: jni.h: No such file or directory compilation terminated. make: *** [conftest.o] Error 1 Unable to compile a JNI program   Java library path:  JNI cpp flags    :  JNI linker flags :  Updating Java configuration in /usr/lib/R Done. 

I am using Ubuntu 13.04. I also tried apt-get install r-cran-rjava which is not helping to solve the issue. Regarding jni.h there were some solution here. But, not sure how can I use the solution here.

like image 905
vinux Avatar asked May 08 '13 10:05

vinux


People also ask

What is rJava package?

rJava provides a low-level bridge between R and Java (via JNI). It allows to create objects, call methods and access fields of Java objects from R. rJava release versions can be obtained from CRAN - usually install. packages("rJava") in R will do the trick.


1 Answers

I ran into the exact same issue. My solution was to install the openjdk-7-* via

sudo apt-get install openjdk-7-* 

Followed that with

sudo R CMD javareconf 

and I was then able to install rJava in R via install.packages("rJava").

While perhaps not the most elegant solution it appears to have solved my problems with getting rJava to work.

like image 146
Peter Avatar answered Oct 05 '22 16:10

Peter