メインコンテンツに移動
戯れ言の水溜まりΦ

メインナビゲーション

  • ホーム
ユーザーアカウントメニュー
  • ログイン

パンくず

  1. ホーム
  2. R
  3. めも

RWeka ロード時のエラー 再び

By estis , 12 10月, 2018
  • コメントを投稿するにはログインまたは登録をしてください

iMac (Retina 5K, 27-inch, 2017)
macOS High Sierra 10.13.6
R 3.5.1
Java 10.0.1
で、
RWeka インストール後に、
library(RWeka)
したら、
 エラー: package or namespace load failed for ‘RWeka’:
  .onLoad は loadNamespace()('rJava' に対する)の中で失敗しました、詳細は: 
  call: dyn.load(file, DLLpath = DLLpath, ...) 
  error:  共有ライブラリ '/Library/Frameworks/R.framework/Versions/3.5/Resources/library/rJava/libs/rJava.so' を読み込めません: 
  dlopen(/Library/Frameworks/R.framework/Versions/3.5/Resources/library/rJava/libs/rJava.so, 6): Library not loaded: /Library/Java/JavaVirtualMachines/jdk-9.jdk/Contents/Home/lib/server/libjvm.dylib
  Referenced from: /Library/Frameworks/R.framework/Versions/3.5/Resources/library/rJava/libs/rJava.so
  Reason: image not found 
と、エラーになった。

Library not loaded: /Library/Java/JavaVirtualMachines/jdk-9.jdk/Contents/Home/lib/server/libjvm.dylib
って言われたけど
/Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home/lib/server/libjvm.dylib
にある。

色々やったけれど、次の方法で解決した。

$ brew install gcc

~/.R/Makevars
に、
CC=/usr/local/bin/gcc-8
と書いて、

download.packages("rJava", destdir="/Users/myuser/", type="source")
install.packages("/Users/myuser/rJava_0.9-10.tar.gz", repo=NULL, type="source")

で、エラーはなくなった。

 

-----やった色々-----------------------------------------------------------------------------------------------------------------

×
http://blog.musirao.net/node/6076
に書いた
$ sudo ln -f -s $(/usr/libexec/java_home)/jre/lib/server/libjvm.dylib /usr/local/lib
を試した。
だが、解決しない。
成功した時のエラーは、
Library not loaded: @rpath/libjvm.dylib
と、@rpath/libjvm.dylib だが、
今回は、
Library not loaded: /Library/Java/JavaVirtualMachines/jdk-9.jdk/Contents/Home/lib/server/libjvm.dylib
だった。

××
https://qiita.com/jjzak/items/470232f08bec4c4df02b
https://stackoverflow.com/questions/30738974/rjava-load-error-in-rstudi…
https://github.com/s-u/rJava/issues/127
https://github.com/s-u/rJava/issues/156
には、
R CMD javareconf
すればいい
とあるのだが、
$ R CMD javareconf
Java interpreter : /usr/bin/java
Java version     : 10.0.1
Java home path   : /Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home
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/darwin
detected JNI linker flags : -L$(JAVA_HOME)/lib/server -ljvm
clang -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG -I/Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home/include -I/Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home/include/darwin  -I/usr/local/include   -fPIC  -Wall -g -O2  -c conftest.c -o conftest.o
clang -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup -single_module -multiply_defined suppress -L/Library/Frameworks/R.framework/Resources/lib -L/usr/local/lib -o conftest.so conftest.o -L/Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home/lib/server -ljvm -F/Library/Frameworks/R.framework/.. -framework R -Wl,-framework -Wl,CoreFoundation
ld: warning: text-based stub file /System/Library/Frameworks//CoreFoundation.framework/CoreFoundation.tbd and library file /System/Library/Frameworks//CoreFoundation.framework/CoreFoundation are out of sync. Falling back to library file for linking.

JAVA_HOME        : /Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home
Java library path: $(JAVA_HOME)/lib/server
JNI cpp flags    : -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/darwin
JNI linker flags : -L$(JAVA_HOME)/lib/server -ljvm
Updating Java configuration in /Library/Frameworks/R.framework/Resources
Done.

と、
Java home path  は、 /Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home
と認識しているが、
エラーは変わらない。

×××
R CMD javareconf
の結果に表示される
ld: warning: text-based stub file /System/Library/Frameworks//CoreFoundation.framework/CoreFoundation.tbd and library file /System/Library/Frameworks//CoreFoundation.framework/CoreFoundation are out of sync. Falling back to library file for linking.
が気になったので、
https://stackoverflow.com/questions/51314888/ld-warning-text-based-stub…
にあるように、
$ sudo rm -rf /Library/Developer/CommandLineTools
$ xcode-select --install
したが、ld: warning が消えなかった。

××××
https://suryu.me/post/rjava_for_sierra/
に
dyn.load()
で、先読みさせればよいとあったので、
dyn.load("/Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home/lib/server/libjvm.dylib")
してから、
library(RWeka)
したけれど、エラーは変わらなかった。

×××××
パッケージのソースからのインストールを試みた。

http://d.hatena.ne.jp/t_ume_tky/20120725/1343189052
に
パッケージのソースダウンロード方法が記載されていた。

download.packages("rJava", destdir="/Users/myuser/", type="source")
でダウンロードして、

https://code.i-harness.com/ja/q/167e21
を参考に
install.packages("/Users/myuser/rJava_0.9-10.tar.gz", repo=NULL, type="source")
でインストール。

が、
make[2]: *** [libjri.jnilib] Error 1
make[1]: *** [src/JRI.jar] Error 2
make: *** [jri] Error 2
ERROR: compilation failed for package ‘rJava’
* removing ‘/Library/Frameworks/R.framework/Versions/3.5/Resources/library/rJava’
とエラーになる。
途中に表示された
clang: error: unsupported option '-fopenmp'
が影響あるのかと思い、
https://heavywatal.github.io/rstats/config.html
を参考に
~/.R/Makevars
に、
CC=/usr/bin/gcc
と書いて実行したけれど、同じエラーが出る。

××××××

https://github.com/s-u/rJava/issues/156
には、
 The default is Java 9
だとあったので、あきらめて
sudo ln -s /Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home/lib/server/libjvm.dylib /Library/Java/JavaVirtualMachines/jdk-9.jdk/Contents/Home/lib/server/libjvm.dylib
して、エラーは、出なくなった。

○
https://qiita.com/ligerbolt/items/6e27c882838fdcc1a490
をよく読んだら、
brew からインストールした gcc を使っていた!!!!

$ brew install gcc
してから、
~/.R/Makevars
に、
CC=/usr/local/bin/gcc-8
と書いて、
install.packages("/Users/myuser/rJava_0.9-10.tar.gz", repo=NULL, type="source")
したら、インストール成功。

$ sudo rm -rf  /Library/Java/JavaVirtualMachines/jdk-9.jdk/

してから、
library(RWeka)
しても、エラーはなくなった。

Rによる機械学習

Comments

ブックナビゲーション

  • 関数
  • めも
    • A Layered Grammar of Graphics
    • HTTPSプロトコルでのWebページ読み込み R
    • R RWeka ロード時のエラー
    • R options()関数 出力内容
    • R plot() の ylim と、axis() の at, labels
    • R から Python を使う
    • R インストールしておきたいパッケージ
    • R グラフを画像として保存する
    • R ソースインストール
    • R データフレームをベクトルに変換する
    • R パッケージのインストール・読み込み
    • R パッケージの更新
    • R ファイルの文字コード確認
    • R ベクトル・行列の掛け算
    • R 全てのオブジェクトをsaveする
    • R 文字化け対策
    • R 有効桁数の変更
    • R 関数の引数を確認する
    • RPostgreSQL のインストール
    • RStudio Server インストール
    • RStudio で、データベースに接続する方法
    • RStudio ショートカットメモ
    • RWeka ロード時のエラー 再び
    • Rwebdriver インストール
    • Rではじめるデータサイエンス 1.2 第1ステップ 練習問題
    • Rではじめるデータサイエンス 1.3 エステティックマッピング 練習問題
    • Rによる自動データ収集 読書めも1
    • Rによる自動データ収集 読書めも2
    • Rによる自動データ収集 読書めも3
    • Rによる自動データ収集 読書めも4
    • Rのgrepなどで、( に一致させたい時
    • Rパッケージ ソースダウンロード
    • UsefulR 9 ドキュメント・プレゼンテーション生成 サポートページ
    • dygraph 数値表示をカンマ区切りにしたい
    • pandoc document conversion failed with error 61
    • rgeolocate パッケージ
    • sar コマンドの出力結果から、%iowait の状況を R でグラフにしたり分析したり
    • sar コマンドの出力結果から、%iowait の状況を R でグラフにしたり分析したり ggplot2 でグラフ描画
RSSフィード
Powered by 戯れ言の水溜まりΦ