簡體   English   中英

無法在 Ubuntu 13.04 的 R 3.0 中安裝 rJava

[英]Unable to install rJava in R 3.0 in Ubuntu 13.04

我無法在R 3.0調用rJava包。 我收到以下消息

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

當我嘗試重新安裝rJava包時出現錯誤。 我已經提供了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.

我正在使用 Ubuntu 13.04。 我也試過apt-get install r-cran-rjava這對解決問題沒有幫助。 關於 jni.h 這里有一些解決方案 但是,不確定如何使用這里的解決方案。

我遇到了完全相同的問題。 我的解決方案是通過以下方式安裝 openjdk-7-*

sudo apt-get install openjdk-7-*

隨之而來的是

sudo R CMD javareconf

然后我就可以通過install.packages("rJava")在 R 中安裝 rJava。

雖然可能不是最優雅的解決方案,但它似乎解決了我讓 rJava 工作的問題。

對於那些收到錯誤的人:

error: unable to load shared object '/some/dir/rJava/libs/rJava.so': libjvm.so: 
cannot open shared object file: No such file or directory

我解決了在系統中定位庫並將它們鏈接到/usr/lib

$sudo updatedb
$locate libjvm.so
/usr/lib/debug/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/server/libjvm.so
/usr/lib/debug/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/zero/libjvm.so
/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/jamvm/libjvm.so
/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/server/libjvm.so
/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/zero/libjvm.so
$sudo ln -s /usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/server/libjvm.so /usr/lib/ 

按照此 askUbuntu 答案中的建議從分發包安裝 rJava 也有效:

sudo apt-get install r-cran-rjava

注意:在 Debian 系統中嘗試過。

我也遇到了 RHEL8.1 上的相同錯誤,我按如下方式解決了它:

yum --enablerepo=* install java-1.8* 

后來我運行了相同的命令,它給了我 R 服務器的錯誤日志。

R CMD javareconf

變成以下輸出。

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM