2011-08-20 4 views
16

우분투 10.04 용 CRAN apt repo의 R 2.13을 사용하고 JGR/rJava가 필요한 Deducer를 설치하려고하지만 rJava가 빌드/설치를 거부합니다. JNI 앱을 만들 수 없습니다. 제안한대로 sudo R CMD javareconf을 시도했지만 구성이 설정되지 않은 경우에만 다른 오류가 발생했습니다. 나는 R: rJava package install failing을 발견 했으므로 나는 r-cran-rjava을 설치했다. (그러나 0.8이고 Deducer/JGR은 0.9 설치를 주장하는 것 같다.) 그리고 내 $JAVA_HOME과 함께 모두 쓸데없는. 어떤 아이디어?우분투 10.04에 rJava 0.9를 설치할 수 없습니다.

$ sudo aptitude install r-cran-rjava 
... 
$ R 

R version 2.13.1 (2011-07-08) 
Copyright (C) 2011 The R Foundation for Statistical Computing 
ISBN 3-900051-07-0 
Platform: x86_64-pc-linux-gnu (64-bit) 

R is free software and comes with ABSOLUTELY NO WARRANTY. 
You are welcome to redistribute it under certain conditions. 
Type 'license()' or 'licence()' for distribution details. 

    Natural language support but running in an English locale 

R is a collaborative project with many contributors. 
Type 'contributors()' for more information and 
'citation()' on how to cite R or R packages in publications. 

Type 'demo()' for some demos, 'help()' for on-line help, or 
'help.start()' for an HTML browser interface to help. 
Type 'q()' to quit R. 

> install.packages(c('JGR','Deducer')) 
Installing package(s) into ‘/home/yang/R/x86_64-pc-linux-gnu-library/2.13’ 
(as ‘lib’ is unspecified) 
also installing the dependencies ‘rJava’, ‘JavaGD’, ‘iplots’ 

trying URL 'http://cran.cnr.Berkeley.edu/src/contrib/rJava_0.9-1.tar.gz' 
Content type 'application/x-gzip' length 527197 bytes (514 Kb) 
opened URL 
================================================== 
downloaded 514 Kb 

trying URL 'http://cran.cnr.Berkeley.edu/src/contrib/JavaGD_0.5-4.tar.gz' 
Content type 'application/x-gzip' length 102242 bytes (99 Kb) 
opened URL 
================================================== 
downloaded 99 Kb 

trying URL 'http://cran.cnr.Berkeley.edu/src/contrib/iplots_1.1-4.tar.gz' 
Content type 'application/x-gzip' length 330323 bytes (322 Kb) 
opened URL 
================================================== 
downloaded 322 Kb 

trying URL 'http://cran.cnr.Berkeley.edu/src/contrib/JGR_1.7-7.tar.gz' 
Content type 'application/x-gzip' length 536564 bytes (523 Kb) 
opened URL 
================================================== 
downloaded 523 Kb 

trying URL 'http://cran.cnr.Berkeley.edu/src/contrib/Deducer_0.4-4.tar.gz' 
Content type 'application/x-gzip' length 5325794 bytes (5.1 Mb) 
opened URL 
================================================== 
downloaded 5.1 Mb 

* installing *source* package ‘rJava’ ... 
checking for gcc... gcc 
checking for C compiler default output file name... a.out 
checking whether the C compiler works... yes 
checking whether we are cross compiling... no 
checking for suffix of executables... 
checking for suffix of object files... o 
c hecking whether we are using the GNU C compiler... yes 
checking whether gcc accepts -g... yes 
checking for gcc option to accept ISO C89... none needed 
checking how to run the C preprocessor... gcc -E 
checking for grep that handles long lines and -e... /bin/grep 
checking for egrep... /bin/grep -E 
checking for ANSI C header files... yes 
checking for sys/wait.h that is POSIX.1 compatible... yes 
checking for sys/types.h... yes 
checking for sys/stat.h... yes 
checking for stdlib.h... yes 
checking for string.h... yes 
checking for memory.h... yes 
checking for strings.h... yes 
checking for inttypes.h... yes 
checking for stdint.h... yes 
checking for unistd.h... yes 
checking for string.h... (cached) yes 
checking sys/time.h usability... yes 
checking sys/time.h presence... yes 
checking for sys/time.h... yes 
checking for unistd.h... (cached) yes 
checking for an ANSI C-conforming const... yes 
checking whether time.h and sys/time.h may both be included... yes 
configure: checking whether gcc supports static inline... 
yes 
checking whether setjmp.h is POSIX.1 compatible... yes 
checking whether sigsetjmp is declared... yes 
checking whether siglongjmp is declared... yes 
checking Java support in R... present: 
interpreter : '/usr/bin/java' 
archiver : '/usr/bin/jar' 
compiler : '/usr/bin/javac' 
header prep.: '/usr/bin/javah' 
cpp flags : '-I/usr/lib/jvm/java-6-openjdk/jre/../include' 
java libs : '-L/usr/lib/jvm/java-6-openjdk/jre/lib/amd64/server -L/usr/lib/jvm/java-6-openjdk/jre/lib/amd64 -L/usr/lib/jvm/java-6-openjdk/jre/../lib/amd64 -L/usr/java/packages/lib/amd64 -L/usr/lib/jni -L/lib -L/usr/lib -ljvm' 
checking whether JNI programs can be compiled... configure: error: Cannot compile a simple JNI program. See config.log for details. 

Make sure you have Java Development Kit installed and correctly registered in R. 
If in doubt, re-run "R CMD javareconf" as root. 

ERROR: configuration failed for package ‘rJava’ 
* removing ‘/home/yang/R/x86_64-pc-linux-gnu-library/2.13/rJava’ 
* installing *source* package ‘JavaGD’ ... 
checking for gcc... gcc 
checking for C compiler default output file name... a.out 
checking whether the C compiler works... yes 
checking whether we are cross compiling... no 
checking for suffix of executables... 
checking for suffix of object files... o 
checking whether we are using the GNU C compiler... yes 
checking whether gcc accepts -g... yes 
checking for gcc option to accept ISO C89... none needed 
checking how to run the C preprocessor... gcc -E 
checking for grep that handles long lines and -e... /bin/grep 
checking for egrep... /bin/grep -E 
checking for ANSI C header files... yes 
checking for sys/wait.h that is POSIX.1 compatible... yes 
checking for sys/types.h... yes 
checking for sys/stat.h... yes 
checking for stdlib.h... yes 
checking for string.h... yes 
checking for memory.h... yes 
checking for strings.h... yes 
checking for inttypes.h... yes 
checking for stdint.h... yes 
checking for unistd.h... yes 
checking for string.h... (cached) yes 
checking sys/time.h usability... yes 
checking sys/time.h presence... yes 
checking for sys/time.h... yes 
checking for unistd.h... (cached) yes 
checking for an ANSI C-conforming const... yes 
checking whether time.h and sys/time.h may both be included... yes 
checking for stdlib.h... (cached) yes 
checking for GNU libc compatible malloc... yes 
checking return type of signal handlers... void 
checking for memset... yes 
checking for mkdir... yes 
checking for rmdir... yes 
checking for select... yes 
checking for socket... yes 
checking Java support in R... present: 
interpreter : '/usr/bin/java' 
cpp flags : '-I/usr/lib/jvm/java-6-openjdk/jre/../include' 
java libs : '-L/usr/lib/jvm/java-6-openjdk/jre/lib/amd64/server -L/usr/lib/jvm/java-6-openjdk/jre/lib/amd64 -L/usr/lib/jvm/java-6-openjdk/jre/../lib/amd64 -L/usr/java/packages/lib/amd64 -L/usr/lib/jni -L/lib -L/usr/lib -ljvm' 
checking whether JNI programs can be compiled... configure: error: Cannot compile a simple JNI program. See config.log for details. 
ERROR: configuration failed for package ‘JavaGD’ 
* removing ‘/home/yang/R/x86_64-pc-linux-gnu-library/2.13/JavaGD’ 
ERROR: dependency ‘rJava’ is not available for package ‘iplots’ 
* removing ‘/home/yang/R/x86_64-pc-linux-gnu-library/2.13/iplots’ 
ERROR: dependencies ‘rJava’, ‘JavaGD’, ‘iplots’ are not available for package ‘JGR’ 
* removing ‘/home/yang/R/x86_64-pc-linux-gnu-library/2.13/JGR’ 
ERROR: dependencies ‘rJava’, ‘JGR’ are not available for package ‘Deducer’ 
* removing ‘/home/yang/R/x86_64-pc-linux-gnu-library/2.13/Deducer’ 

The downloaded packages are in 
     ‘/tmp/RtmpCSITmm/downloaded_packages’ 
Warning messages: 
1: In install.packages(c("JGR", "Deducer")) : 
    installation of package 'rJava' had non-zero exit status 
2: In install.packages(c("JGR", "Deducer")) : 
    installation of package 'JavaGD' had non-zero exit status 
3: In install.packages(c("JGR", "Deducer")) : 
    installation of package 'iplots' had non-zero exit status 
4: In install.packages(c("JGR", "Deducer")) : 
    installation of package 'JGR' had non-zero exit status 
5: In install.packages(c("JGR", "Deducer")) : 
    installation of package 'Deducer' had non-zero exit status 
> 


R version 2.13.1 (2011-07-08) 
Copyright (C) 2011 The R Foundation for Statistical Computing 
ISBN 3-900051-07-0 
Platform: x86_64-pc-linux-gnu (64-bit) 

R is free software and comes with ABSOLUTELY NO WARRANTY. 
You are welcome to redistribute it under certain conditions. 
Type 'license()' or 'licence()' for distribution details. 

    Natural language support but running in an English locale 

R is a collaborative project with many contributors. 
Type 'contributors()' for more information and 
'citation()' on how to cite R or R packages in publications. 

Type 'demo()' for some demos, 'help()' for on-line help, or 
'help.start()' for an HTML browser interface to help. 
Type 'q()' to quit R. 

> install.packages('rJava') 
Installing package(s) into ‘/home/yang/R/x86_64-pc-linux-gnu-library/2.13’ 
(as ‘lib’ is unspecified) 
trying URL 'http://cran.cnr.Berkeley.edu/src/contrib/rJava_0.9-1.tar.gz' 
Content type 'application/x-gzip' length 527197 bytes (514 Kb) 
opened URL 
================================================== 
downloaded 514 Kb 

* installing *source* package ‘rJava’ ... 
checking for gcc... gcc 
checking for C compiler default output file name... a.out 
checking whether the C compiler works... yes 
checking whether we are cross compiling... no 
checking for suffix of executables... 
checking for suffix of object files... o 
checking whether we are using the GNU C compiler... yes 
checking whether gcc accepts -g... yes 
checking for gcc option to accept ISO C89... none needed 
checking how to run the C preprocessor... gcc -E 
checking for grep that handles long lines and -e... /bin/grep 
checking for egrep... /bin/grep -E 
checking for ANSI C header files... yes 
checking for sys/wait.h that is POSIX.1 compatible... yes 
checking for sys/types.h... yes 
checking for sys/stat.h... yes 
checking for stdlib.h... yes 
checking for string.h... yes 
checking for memory.h... yes 
checking for strings.h... yes 
checking for inttypes.h... yes 
checking for stdint.h... yes 
checking for unistd.h... yes 
checking for string.h... (cached) yes 
checking sys/time.h usability... yes 
checking sys/time.h presence... yes 
checking for sys/time.h... yes 
checking for unistd.h... (cached) yes 
checking for an ANSI C-conforming const... yes 
checking whether time.h and sys/time.h may both be included... yes 
configure: checking whether gcc supports static inline... 
yes 
checking whether setjmp.h is POSIX.1 compatible... yes 
checking whether sigsetjmp is declared... yes 
checking whether siglongjmp is declared... yes 
checking Java support in R... present: 
interpreter : '/usr/bin/java' 
archiver : '/usr/bin/jar' 
compiler : '/usr/bin/javac' 
header prep.: '/usr/bin/javah' 
cpp flags : '-I/usr/lib/jvm/java-6-openjdk/jre/../include' 
java libs : '-L/usr/lib/jvm/java-6-openjdk/jre/lib/amd64/server -L/usr/lib/jvm/java-6-openjdk/jre/lib/amd64 -L/usr/lib/jvm/java-6-openjdk/jre/../lib/amd64 -L/usr/java/packages/lib/amd64 -L/usr/lib/jni -L/lib -L/usr/lib -ljvm' 
checking whether JNI programs can be compiled... configure: error: Cannot compile a simple JNI program. See config.log for details. 

Make sure you have Java Development Kit installed and correctly registered in R. 
If in doubt, re-run "R CMD javareconf" as root. 

ERROR: configuration failed for package ‘rJava’ 
* removing ‘/home/yang/R/x86_64-pc-linux-gnu-library/2.13/rJava’ 

The downloaded packages are in 
     ‘/tmp/RtmpTk0ftk/downloaded_packages’ 
Warning message: 
In install.packages("rJava") : 
    installation of package 'rJava' had non-zero exit status 
> 
$ sudo R CMD javareconf 
Java interpreter : /usr/bin/java 
Java version  : 1.6.0_20 
Java home path : /usr/lib/jvm/java-6-openjdk/jre 
Java compiler : /usr/bin/javac 
Java headers gen.: /usr/bin/javah 
Java archive tool: /usr/bin/jar 
Java library path: $(JAVA_HOME)/lib/amd64/server:$(JAVA_HOME)/lib/amd64:$(JAVA_HOME)/../lib/amd64:/usr/java/packages/lib/amd64:/usr/lib/jni:/lib:/usr/lib 
JNI linker flags : -L$(JAVA_HOME)/lib/amd64/server -L$(JAVA_HOME)/lib/amd64 -L$(JAVA_HOME)/../lib/amd64 -L/usr/java/packages/lib/amd64 -L/usr/lib/jni -L/lib -L/usr/lib -ljvm 
JNI cpp flags : 

Updating Java configuration in /etc/R 
Done. 

$ R 

R version 2.13.1 (2011-07-08) 
Copyright (C) 2011 The R Foundation for Statistical Computing 
ISBN 3-900051-07-0 
Platform: x86_64-pc-linux-gnu (64-bit) 

R is free software and comes with ABSOLUTELY NO WARRANTY. 
You are welcome to redistribute it under certain conditions. 
Type 'license()' or 'licence()' for distribution details. 

    Natural language support but running in an English locale 

R is a collaborative project with many contributors. 
Type 'contributors()' for more information and 
'citation()' on how to cite R or R packages in publications. 

Type 'demo()' for some demos, 'help()' for on-line help, or 
'help.start()' for an HTML browser interface to help. 
Type 'q()' to quit R. 

> install.packages('rJava') 
Installing package(s) into ‘/home/yang/R/x86_64-pc-linux-gnu-library/2.13’ 
(as ‘lib’ is unspecified) 
trying URL 'http://cran.cnr.Berkeley.edu/src/contrib/rJava_0.9-1.tar.gz' 
Content type 'application/x-gzip' length 527197 bytes (514 Kb) 
opened URL 
================================================== 
downloaded 514 Kb 

* installing *source* package ‘rJava’ ... 
checking for gcc... gcc 
checking for C compiler default output file name... a.out 
checking whether the C compiler works... yes 
checking whether we are cross compiling... no 
checking for suffix of executables... 
checking for suffix of object files... o 
checking whether we are using the GNU C compiler... yes 
checking whether gcc accepts -g... yes 
checking for gcc option to accept ISO C89... none needed 
checking how to run the C preprocessor... gcc -E 
checking for grep that handles long lines and -e... /bin/grep 
checking for egrep... /bin/grep -E 
checking for ANSI C header files... yes 
c hecking for sys/wait.h that is POSIX.1 compatible... yes 
checking for sys/types.h... yes 
checking for sys/stat.h... yes 
checking for stdlib.h... yes 
checking for string.h... yes 
checking for memory.h... yes 
checking for strings.h... yes 
checking for inttypes.h... yes 
checking for stdint.h... yes 
checking for unistd.h... yes 
checking for string.h... (cached) yes 
checking sys/time.h usability... yes 
checking sys/time.h presence... yes 
checking for sys/time.h... yes 
checking for unistd.h... (cached) yes 
checking for an ANSI C-conforming const... yes 
checking whether time.h and sys/time.h may both be included... yes 
configure: checking whether gcc supports static inline... 
yes 
checking whether setjmp.h is POSIX.1 compatible... yes 
checking whether sigsetjmp is declared... yes 
checking whether siglongjmp is declared... yes 
checking Java support in R... present: 
interpreter : '/usr/bin/java' 
archiver : '/usr/bin/jar' 
compiler : '/usr/bin/javac' 
header prep.: '/usr/bin/javah' 
cpp flags : '' 
java libs : '-L/usr/lib/jvm/java-6-openjdk/jre/lib/amd64/server -L/usr/lib/jvm/java-6-openjdk/jre/lib/amd64 -L/usr/lib/jvm/java-6-openjdk/jre/../lib/amd64 -L/usr/java/packages/lib/amd64 -L/usr/lib/jni -L/lib -L/usr/lib -ljvm' 
configure: error: One or more Java configuration variables are not set. 
Make sure R is configured with full Java support (including JDK). Run 
R CMD javareconf 
as root to add Java support to R. 

If you don't have root privileges, run 
R CMD javareconf -e 
to set all Java-related variables and then install rJava. 

ERROR: configuration failed for package ‘rJava’ 
* removing ‘/home/yang/R/x86_64-pc-linux-gnu-library/2.13/rJava’ 

The downloaded packages are in 
     ‘/tmp/RtmpsJBxfe/downloaded_packages’ 
Warning message: 
In install.packages("rJava") : 
    installation of package 'rJava' had non-zero exit status 
> 
+2

여러 번 동일한 조언을주었습니다. 그것을주의하지 않는 충분한 이유가 있습니까? 여기에 다시 한번 빠뜨린 경우입니다. "의심 스럽다면"R CMD javareconf "를 루트로 다시 실행하십시오." –

+1

어? 나는 나의 원래의 질문에서 그것을했다는 것을 명시 적으로 언급했고, 또한 성적표에있다 .... – Yang

+0

죄송합니다. 내가 말한 것은 당신이 질문을 참조한 다음 제안 된 수정 사항을 수행하기 전에 설치를 계속한다는 것입니다. –

답변

17

하기 Dah는 얼마 게시 후 내가 여기에 해답을 발견 : 여기

무슨 일이 있었는지의보다 완벽한 성적 증명서의

http://r-interface.blogspot.com/2012/04/install-r-jgr-and-deducer-in-ubuntu.html

을 이미 썬 자바가 설치 한 있지만, 열쇠는 update-java-alternatives을 실행하여 javareconf를 실행하기 전에 실제로 Sun Java로 전환합니다.

sudo update-java-alternatives -s java-6-sun 
sudo R CMD javareconf 
+0

Ubuntu의 Java SDK를 사용하여 R 및 rJava 패키지 용으로 빌드 할 때 Java 옵션이 구성된 Debian/Ubuntu에서 모두 작동해야합니다. 다른 Java 백엔드로 전환하려면 실제로 재구성해야합니다. –

0

가 여기에 또 다른 옵션들 :

R을 실행하기 전에 수행이

export LD_LIBRARY_PATH=/usr/lib/jvm/java-1.6.0-openjdk/jre/lib/amd64/server 

(위의 경로에 대해, 특정 libjvm.so의 대체 위치, 당신은 다른 구성이있는 경우). libjvm.so 찾으려면

sudo updatedb && locate libjvm.so 
1

다른 한 (상대적으로 명백한) 경고를 수행 할 수 있습니다 내가 한 일을하고 java6와 java7 모두를 설치하지 마십시오. 경로와 환경 변수를 지정하여 '수정'할 수없는 갈등이 발생했습니다. 둘 다 제거하고 java6을 다시 설치하면 JGR이 성공적으로 설치됩니다. (우분투에서이 정확한에 애플 G4 파워 북)

0

DWright는 right..an 대안 대신에 당신은 R이 자바 경로

sudo locate libjvm.so 

를 찾아 ldpaths에 IR을 추가 할 것입니다 시작보다 때마다 내보낼이다

sudo gedit /etc/R/ldpaths 

i.e 
${JAVA_HOME=/usr/java/jdk1.7.0_07/jre}