2016-10-18 7 views
1

MRO 3.3.1にrJavaパッケージをインストールする際に問題があります。プラットフォーム:x86_64-pc-linux-gnu(Ubuntu 16.04LTS 64-bit) )。エラーrJavaのインストール| Makefile.all:38:ターゲット 'libjri.so'のレシピが失敗しました

他にもいくつか報告されている問題の後で、私はjava-8-openjdk- *、java-8-oracle、liblzma-devなどをインストールしました。私もrJavaを 'conda install'を使ってインストールしようとしましたが、/ anaconda3ディレクトリに保存されていましたが、MROにそれを有効にする方法はわかりません。

手がかりはありますか?

* installing *source* package ‘rJava’ ... 
** package ‘rJava’ successfully unpacked and MD5 sums checked 
checking for gcc... gcc -std=gnu99 
checking whether the C compiler works... yes 
checking for C compiler default output file name... a.out 
checking for suffix of executables... 
checking whether we are cross compiling... no 
checking for suffix of object files... o 
checking whether we are using the GNU C compiler... yes 
checking whether gcc -std=gnu99 accepts -g... yes 
checking for gcc -std=gnu99 option to accept ISO C89... none needed 
checking how to run the C preprocessor... gcc -std=gnu99 -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 -std=gnu99 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-8-openjdk-amd64/jre/../include -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include/linux' 
java libs : '-L/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/server -ljvm' 
checking whether Java run-time works... yes 
checking whether -Xrs is supported... yes 
checking whether JNI programs can be compiled... yes 
checking JNI data types... ok 
checking whether JRI should be compiled (autodetect)... yes 
checking whether debugging output should be enabled... no 
checking whether memory profiling is desired... no 
checking whether threads support is requested... no 
checking whether callbacks support is requested... no 
checking whether JNI cache support is requested... no 
checking whether headless init is enabled... no 
checking whether JRI is requested... yes 
configure: creating ./config.status 
config.status: creating src/Makevars 
config.status: creating R/zzz.R 
config.status: creating src/config.h 
=== configuring in jri (/tmp/RtmpzZwPWE/R.INSTALL1f1038e0708d/rJava/jri) 
configure: running /bin/sh ./configure --disable-option-checking '--prefix=/usr/local' --cache-file=/dev/null --srcdir=. 
checking build system type... x86_64-unknown-linux-gnu 
checking host system type... x86_64-unknown-linux-gnu 
checking for gcc... gcc -std=gnu99 
checking whether the C compiler works... yes 
checking for C compiler default output file name... a.out 
checking for suffix of executables... 
checking whether we are cross compiling... no 
checking for suffix of object files... o 
checking whether we are using the GNU C compiler... yes 
checking whether gcc -std=gnu99 accepts -g... yes 
checking for gcc -std=gnu99 option to accept ISO C89... none needed 
checking how to run the C preprocessor... gcc -std=gnu99 -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 whether Java interpreter works... checking whether JNI programs can be compiled... yes 
checking whether JNI programs can be run... yes 
checking JNI data types... ok 
checking whether Rinterface.h exports R_CStackXXX variables... yes 
checking whether Rinterface.h exports R_SignalHandlers... yes 
configure: creating ./config.status 
config.status: creating src/Makefile 
config.status: creating Makefile 
config.status: creating run 
config.status: creating src/config.h 
** libs 
gcc -std=gnu99 -I/usr/lib64/microsoft-r/3.3/lib64/R/include -DNDEBUG -I. -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include/linux -DU_STATIC_IMPLEMENTATION -fpic -DU_STATIC_IMPLEMENTATION -O2 -g -c Rglue.c -o Rglue.o 
gcc -std=gnu99 -I/usr/lib64/microsoft-r/3.3/lib64/R/include -DNDEBUG -I. -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include/linux -DU_STATIC_IMPLEMENTATION -fpic -DU_STATIC_IMPLEMENTATION -O2 -g -c arrayc.c -o arrayc.o 
gcc -std=gnu99 -I/usr/lib64/microsoft-r/3.3/lib64/R/include -DNDEBUG -I. -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include/linux -DU_STATIC_IMPLEMENTATION -fpic -DU_STATIC_IMPLEMENTATION -O2 -g -c callJNI.c -o callJNI.o 
gcc -std=gnu99 -I/usr/lib64/microsoft-r/3.3/lib64/R/include -DNDEBUG -I. -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include/linux -DU_STATIC_IMPLEMENTATION -fpic -DU_STATIC_IMPLEMENTATION -O2 -g -c callback.c -o callback.o 
gcc -std=gnu99 -I/usr/lib64/microsoft-r/3.3/lib64/R/include -DNDEBUG -I. -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include/linux -DU_STATIC_IMPLEMENTATION -fpic -DU_STATIC_IMPLEMENTATION -O2 -g -c fields.c -o fields.o 
gcc -std=gnu99 -I/usr/lib64/microsoft-r/3.3/lib64/R/include -DNDEBUG -I. -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include/linux -DU_STATIC_IMPLEMENTATION -fpic -DU_STATIC_IMPLEMENTATION -O2 -g -c init.c -o init.o 
gcc -std=gnu99 -I/usr/lib64/microsoft-r/3.3/lib64/R/include -DNDEBUG -I. -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include/linux -DU_STATIC_IMPLEMENTATION -fpic -DU_STATIC_IMPLEMENTATION -O2 -g -c jri_glue.c -o jri_glue.o 
gcc -std=gnu99 -I/usr/lib64/microsoft-r/3.3/lib64/R/include -DNDEBUG -I. -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include/linux -DU_STATIC_IMPLEMENTATION -fpic -DU_STATIC_IMPLEMENTATION -O2 -g -c loader.c -o loader.o 
gcc -std=gnu99 -I/usr/lib64/microsoft-r/3.3/lib64/R/include -DNDEBUG -I. -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include/linux -DU_STATIC_IMPLEMENTATION -fpic -DU_STATIC_IMPLEMENTATION -O2 -g -c otables.c -o otables.o 
gcc -std=gnu99 -I/usr/lib64/microsoft-r/3.3/lib64/R/include -DNDEBUG -I. -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include/linux -DU_STATIC_IMPLEMENTATION -fpic -DU_STATIC_IMPLEMENTATION -O2 -g -c rJava.c -o rJava.o 
gcc -std=gnu99 -I/usr/lib64/microsoft-r/3.3/lib64/R/include -DNDEBUG -I. -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include/linux -DU_STATIC_IMPLEMENTATION -fpic -DU_STATIC_IMPLEMENTATION -O2 -g -c tools.c -o tools.o 
gcc -std=gnu99 -shared -L/usr/lib64/microsoft-r/3.3/lib64/R/lib -o rJava.so Rglue.o arrayc.o callJNI.o callback.o fields.o init.o jri_glue.o loader.o otables.o rJava.o tools.o -L/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/server -ljvm -L/usr/lib64/microsoft-r/3.3/lib64/R/lib -lR 
(cd ../jri && make) 
make[1]: Entering directory '/tmp/RtmpzZwPWE/R.INSTALL1f1038e0708d/rJava/jri' 
make -C src JRI.jar 
make[2]: Entering directory '/tmp/RtmpzZwPWE/R.INSTALL1f1038e0708d/rJava/jri/src' 
/usr/bin/javac -target 1.4 -source 1.4 -d . ../package-info.java ../RFactor.java ../REXP.java ../Rengine.java ../RList.java ../Mutex.java ../RConsoleOutputStream.java ../RMainLoopCallbacks.java ../RVector.java ../RBool.java 
warning: [options] bootstrap class path not set in conjunction with -source 1.4 
warning: [options] source value 1.4 is obsolete and will be removed in a future release 
warning: [options] target value 1.4 is obsolete and will be removed in a future release 
warning: [options] To suppress warnings about obsolete options, use -Xlint:-options. 
4 warnings 
/usr/bin/javah -d . -classpath . org.rosuda.JRI.Rengine 
gcc -std=gnu99 -c -o Rengine.o Rengine.c -g -Iinclude -DRIF_HAS_CSTACK -DRIF_HAS_RSIGHAND -DU_STATIC_IMPLEMENTATION -O2 -g -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include/linux -fpic -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include/linux -I/usr/lib64/microsoft-r/3.3/lib64/R/include -I/usr/lib64/microsoft-r/3.3/lib64/R/include 
gcc -std=gnu99 -c -o jri.o jri.c -g -Iinclude -DRIF_HAS_CSTACK -DRIF_HAS_RSIGHAND -DU_STATIC_IMPLEMENTATION -O2 -g -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include/linux -fpic -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include/linux -I/usr/lib64/microsoft-r/3.3/lib64/R/include -I/usr/lib64/microsoft-r/3.3/lib64/R/include 
gcc -std=gnu99 -c -o Rcallbacks.o Rcallbacks.c -g -Iinclude -DRIF_HAS_CSTACK -DRIF_HAS_RSIGHAND -DU_STATIC_IMPLEMENTATION -O2 -g -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include/linux -fpic -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include/linux -I/usr/lib64/microsoft-r/3.3/lib64/R/include -I/usr/lib64/microsoft-r/3.3/lib64/R/include 
gcc -std=gnu99 -c -o Rinit.o Rinit.c -g -Iinclude -DRIF_HAS_CSTACK -DRIF_HAS_RSIGHAND -DU_STATIC_IMPLEMENTATION -O2 -g -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include/linux -fpic -I/usr/lib64/microsoft-r/3.3/lib64/R/include -I/usr/lib64/microsoft-r/3.3/lib64/R/include 
gcc -std=gnu99 -c -o globals.o globals.c -g -Iinclude -DRIF_HAS_CSTACK -DRIF_HAS_RSIGHAND -DU_STATIC_IMPLEMENTATION -O2 -g -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include/linux -fpic -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include/linux 
gcc -std=gnu99 -c -o rjava.o rjava.c -g -Iinclude -DRIF_HAS_CSTACK -DRIF_HAS_RSIGHAND -DU_STATIC_IMPLEMENTATION -O2 -g -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include/linux -fpic -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include -I/usr/lib/jvm/java-8-openjdk-amd64/jre/../include/linux 
rjava.c: In function ‘RJava_request_lock’: 
rjava.c:22:3: warning: ignoring return value of ‘write’, declared with attribute warn_unused_result [-Wunused-result] 
    write(ipcout, buf, sizeof(ptrlong)); 
^
rjava.c: In function ‘RJava_clear_lock’: 
rjava.c:30:3: warning: ignoring return value of ‘write’, declared with attribute warn_unused_result [-Wunused-result] 
    write(ipcout, buf, sizeof(ptrlong)); 
^
rjava.c: In function ‘RJava_request_callback’: 
rjava.c:39:3: warning: ignoring return value of ‘write’, declared with attribute warn_unused_result [-Wunused-result] 
    write(ipcout, buf, sizeof(ptrlong) * 3); 
^
rjava.c: In function ‘RJava_init_ctrl’: 
rjava.c:51:3: warning: ignoring return value of ‘write’, declared with attribute warn_unused_result [-Wunused-result] 
    write(ipcout, buf, sizeof(ptrlong)); 
^
rjava.c:52:3: warning: ignoring return value of ‘read’, declared with attribute warn_unused_result [-Wunused-result] 
    read(resin, buf, sizeof(ptrlong) * 2); 
^
gcc -std=gnu99 -o libjri.so Rengine.o jri.o Rcallbacks.o Rinit.o globals.o rjava.o -shared -L/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/server -ljvm -Wl,--export-dynamic -fopenmp -L/usr/lib64/microsoft-r/3.3/lib64/R/lib -lR -lpcre -llzma -lbz2 -lz -lrt -ldl -lm -licui18n -licuuc -licudata -lstdc++ -licuuc -licui18n 
/usr/bin/ld: cannot find -lpcre 
/usr/bin/ld: cannot find -lbz2 
collect2: error: ld returned 1 exit status 
Makefile.all:38: recipe for target 'libjri.so' failed 
make[2]: Leaving directory '/tmp/RtmpzZwPWE/R.INSTALL1f1038e0708d/rJava/jri/src' 
make[2]: *** [libjri.so] Error 1 
Makefile.all:21: recipe for target 'src/JRI.jar' failed 
make[1]: Leaving directory '/tmp/RtmpzZwPWE/R.INSTALL1f1038e0708d/rJava/jri' 
make[1]: *** [src/JRI.jar] Error 2 
Makevars:14: recipe for target 'jri' failed 
make: *** [jri] Error 2 
ERROR: compilation failed for package ‘rJava’ 
* removing ‘/home/jeco/R/x86_64-pc-linux-gnu-library/3.3/rJava’ 
Warning in install.packages : 
    installation of package ‘rJava’ had non-zero exit status 

答えて

2

libpcreおよびlibbz2用の開発ライブラリが必要です。 どのディストリビューションを使用していますか? それは、Debianベースだと仮定すると、以下のパッケージをインストールしてみてください:

  • libbz2-devの
  • のlibpcre3-devのかlibpcre2-devを(必要とされるもののバージョンがわからない)

例:

sudo apt-get install libbz2-dev libpcre3-dev 
+0

偉大な@flg !!これを解決しようとしている約1ヶ月後、最終的に私は44分で解決策を得ました。どうもありがとう。 – Jecogeo

+0

私は助けてくれることを嬉しく思います:-) – flg

関連する問題