java.library.path
MATLAB がネイティブの依存関係を検索していないように見えるという問題を経験した人はいますか?
例えば:
これが私のlibrarypath.txtです:
##
## FILE: librarypath.txt
##
## Entries:
## o path_to_jnifile
## o [alpha,glnx86,sol2,unix,win32,mac]=path_to_jnifile
## o $matlabroot/path_to_jnifile
## o $jre_home/path_to_jnifile
##
$matlabroot/bin/$arch
次に、MATLAB を開きます。
java.lang.System.getProperty('java.library.path')
ans =
/Applications/MATLAB_R2012a.app/bin/maci64
わかりました、よさそうです。そのフォルダの中身を見てみましょう:
ls /Applications/MATLAB_R2012a.app/bin/maci64/
...
libmex.dylib
...
わかりました、libmex.dylib
(たとえば)そのフォルダーに存在します。ロードしてみましょう:
java.lang.System.loadLibrary('libmex.dylib')
Java exception occurred:
java.lang.UnsatisfiedLinkError: no libmex.dylib in java.library.path
どうして!?