When using mex files, cannot find libraries

3 ビュー (過去 30 日間)
jh2011
jh2011 2018 年 1 月 9 日
回答済み: Walter Roberson 2018 年 1 月 9 日
I created a mex function which uses another library that relies on gfortran. However, when I execute the function, I see this error message
Library not loaded: /usr/local/lib/libgfortran.1.dylib
I do have this library, but it's just in a different folder called /usr/local/gfortran/lib, so I did this to fix the issue
setenv('DYLD_LIBRARY_PATH', '/usr/local/gfortran/lib');
This doesn't fix it at all. I still see the same issue. Is there a way to force the library to look for gfortran in this specific path that I specified?
  2 件のコメント
Walter Roberson
Walter Roberson 2018 年 1 月 9 日
Which operating system are you using, and which release? DYLD_LIBRARY_PATH suggests OS-X or MacOS, but there were security changes to how DYLD_LIBRARY_PATH is processed in recent Apple releases.
jh2011
jh2011 2018 年 1 月 9 日
Using MacOS Sierra 10.12.6.

サインインしてコメントする。

採用された回答

Walter Roberson
Walter Roberson 2018 年 1 月 9 日
With MacOS Sierra, you are affected to Apple's changes to disable most uses of DYLD_LIBRARY_PATH . See https://github.com/nteract/nteract/issues/1523

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeWrite C Functions Callable from MATLAB (MEX Files) についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by