rJava는 R과 Java를 인터페이스 하는 프로그램이다. rJava를 설치하는 것은 다른 패키지 만큼 쉽지 않다. 삽질을 많이 해야 할수 있는데, 설치 하면서 생각보다 어이 없는데서 실수 하는 경우가 많다. 현 재 메뉴얼 대로 하면 문제가 없다. 그리고 우분투 운영체계에서는 Rstudio에서 설치하게 되면, Rstudio에 로그인한 계정만 되니까? Root 계정에서 R을 실행하여 설치 작업을 진행 한다.
$ sudo -i R $ sudo apt update -y
- Java 런타임 환경과 개발환경인 JRE, JDK를 설치 한다.
$ sudo apt install -y openjdk-8-jdk openjdk-8-jre
설치되었으면 확인 아래 명령어를 이용하여 확인한다.
$ sudo R CMD javareconf
*** JAVA_HOME is not a valid path, ignoring
Java interpreter : /usr/bin/java
Java version : 1.8.0_292
Java home path : /usr/lib/jvm/java-8-openjdk-amd64/jre
Java compiler : /usr/bin/javac
Java headers gen.: /usr/bin/javah
Java archive tool: /usr/bin/jar
trying to compile and link a JNI program
detected JNI cpp flags : -I$(JAVA_HOME)/../include -I$(JAVA_HOME)/../include/linux
detected JNI linker flags : -L$(JAVA_HOME)/lib/amd64/server -ljvm
gcc -std=gnu99 -I"/usr/share/R/include" -DNDEBUG -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include/linux -fpic -g -O2 -fdebug-prefix-map=/build/r-base-tRgc13/r-base-4.0.5=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g -c conftest.c -o conftest.o
gcc -std=gnu99 -shared -L/usr/lib/R/lib -Wl,-Bsymbolic-functions -Wl,-z,relro -o conftest.so conftest.o -L/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/server -ljvm -L/usr/lib/R/lib -lR
JAVA_HOME : /usr/lib/jvm/java-8-openjdk-amd64/jre
Java library path: $(JAVA_HOME)/lib/amd64/server
JNI cpp flags : -I$(JAVA_HOME)/../include -I$(JAVA_HOME)/../include/linux
JNI linker flags : -L$(JAVA_HOME)/lib/amd64/server -ljvm
Updating Java configuration in /usr/lib/R
※ rJava를 아래와 같이 하이퍼링크를 걸지 않고 설치 하였을때, 디렉토리가 없다는 메세지가 뜨면서 설치가 되지 않으니, 반드시 링크를 걸어야 한다.
$ ln -s ${JAVA_HOME}}/jre/lib/server/libjvm.dylib ${R_HOME}/lib/libjvm.dylib
2. rJava R 콘솔에서 설치
root R로 들어가서 rJava 패키지를 설치한다.
$ sudo -i R
> install.packages("rJava")
향후 특정 시점이 되면, roracle 및 mailR을 사용하게 된다. rJava 미리 설치 되어 있어야 Java를 사용하는 패키지를 사용 할 수 있다.
앞서 이야기 devtools는 R과 c++의 개발툴 가지고 이야기 한것이지만, 이번에는 Java로 개발된 것을 이야기 한 것이다. 매우 중요하니, 반드시 설치 하여야 한다.
댓글 없음:
댓글 쓰기