OpenSUSE 11.3の R 2.14.1-9.1 にrJavaパッケージをインストールしようとしています。この質問を見たことがありますが、Ubuntu 用です。Sun JDK をインストールし、それを使用するようにシステムを再構成しました。
admin@linux-nb3w:~> java -version
java version "1.6.0_29"
Java(TM) SE Runtime Environment (build 1.6.0_29-b11)
Java HotSpot(TM) Client VM (build 20.4-b02, mixed mode)
admin@linux-nb3w:~>
編集 1:
JDK と JRE を更新しました。を実行すると、わずかに異なるエラーが発生install.packages("rJava")
します。次のエラー出力が表示されます (新しいエラーが投稿され、太字で終わります)。
> install.packages("rJava")
Installing package(s) into ‘/home/admin/R/i686-pc-linux-gnu-library/2.14’
(as ‘lib’ is unspecified)
--- Please select a CRAN mirror for use in this session ---
Loading Tcl/Tk interface ... done
trying URL 'http://ftp.iitm.ac.in/cran/src/contrib/rJava_0.9-3.tar.gz'
Content type 'application/x-gzip' length 537153 bytes (524 Kb)
opened URL
==================================================
downloaded 524 Kb
* installing *source* package ‘rJava’ ...
** package ‘rJava’ successfully unpacked and MD5 sums checked
checking for gcc... gcc -std=gnu99
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 -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... /usr/bin/grep
checking for egrep... /usr/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-1.6.0-sun-1.6.0/jre/../include -I/usr/lib/jvm/java-1.6.0-sun-1.6.0/jre/../include/linux'
java libs : '-L/usr/lib/jvm/java-1.6.0-sun-1.6.0/jre/lib/i386/client -L/usr/lib/jvm/java-1.6.0-sun-1.6.0/jre/lib/i386 -L/usr/lib/jvm/java-1.6.0-sun-1.6.0/jre/../lib/i386 -L/usr/java/packages/lib/i386 -L/lib -L/usr/lib -ljvm'
checking whether JNI programs can be compiled... yes
checking JNI data types... configure: error: One or more JNI types differ from the corresponding native type. You may need to use non-standard compiler flags or a different compiler in order to fix this.
ERROR: configuration failed for package ‘rJava’
* removing ‘/home/admin/R/i686-pc-linux-gnu-library/2.14/rJava’
The downloaded packages are in
‘/tmp/RtmpIFKEha/downloaded_packages’
Warning message:
In install.packages("rJava") :
installation of package ‘rJava’ had non-zero exit status
>
新しいエラー行:
JNI データ型をチェックしています... 構成: エラー: 1 つ以上の JNI 型が、対応するネイティブ型と異なります。これを修正するには、非標準のコンパイラ フラグまたは別のコンパイラを使用する必要がある場合があります。
R CMD javareconf
as を実行しましたroot
。cpp フラグ フィールドを空のままにします。これが失敗する理由の 1 つであることはわかっていますが、解決方法がわかりません。
私は、このインストール コマンドを dependencies=TRUE オプションを指定し、repo も明示的に指定して試しました (例: repo="blah blah")。何も機能しませんでした。
OpenSUSE の更新方法がわかりません。しかし、ここで手順が明確に示されている Ubuntu とは異なり、SUSE でそれを行う簡単な方法はないようです。
どんな助けでも大歓迎です。