Rでのライブラリ読み込みエラーの対処
Rstudioでライブラリ"rgl"を読み込もうとしたところ...
$ library(rgl) Error : .onLoad は loadNamespace()('rgl' に対する)の中で失敗しました、詳細は: call: dyn.load(file, DLLpath = DLLpath, ...) error: 共有ライブラリ '/Library/Frameworks/R.framework/Versions/3.1/Resources/library/rgl/libs/rgl.so' を読み込めません: dlopen(/Library/Frameworks/R.framework/Versions/3.1/Resources/library/rgl/libs/rgl.so, 6): Library not loaded: /usr/X11/lib/libGLU.1.dylib Referenced from: /Library/Frameworks/R.framework/Versions/3.1/Resources/library/rgl/libs/rgl.so Reason: image not found 追加情報: 警告メッセージ: パッケージ ‘rgl’ はバージョン 3.1.1 の R の下で造られました エラー: ‘rgl’ に対するパッケージもしくは名前空間のロードが失敗しました
となって、読み込めなかった。
これはrgl.soの読み込みにlibGLU.1.dylibが必要だが、/usr/X11/lib/に見つからないということだということがわかる。[1]
とりあえず応急処置として、/opt/X11/libフォルダ毎/usr/X11/にコピーしてしまうことにした[4]。
sudo cp -r /opt/X11/lib /usr/X11/lib
この後、Rstudioにて
$ library(rgl) 警告メッセージ: パッケージ ‘rgl’ はバージョン 3.1.1 の R の下で造られました
ライブラリーが読み込まれた!こんな簡単な処理に2,3時間費やしてしまった。
[1]と同じように、素直にリンクを作ってしまった方が良かったのかもしれない。
sudo ln -s /opt/X11/lib/libGLU.1.dylib /usr/X11/lib/ligGLU.1.dylib
< Reference >
[1] RにRMeCabをインストールしてパッケージをロードしようとするとエラーが出る - 教育社会学の勉強・備忘録
[2] dyld: Library not loaded: の解決方法 - 観照げぇむ Vol.3
[3] ファイルシステムの概要
[4] Linuxコマンド逆引き大全 - 【 ディレクトリごとコピーする 】:ITpro