1. Dyld_library_path Mac Mojave
  2. Mac Dyld Shared Cache

Sep 18, 2007  You can confirm this by trying printenv DYLDLIBRARYPATH. If you don't see it there, try adding it and executing another ISIS application. Also, the problem may be the command shell you are using. Turns out our Bash shell startup script does not set up the Mac environment at all - an oversight on my part. I will fix that and push it to our. 「MacPorts のライブラリを認識させるために DYLDLIBRARYPATH を設定しよう」 これはまだわかる。.

Dyld_library_path Mac

Problem :

Mac

Build an Intel® MKL program on Mac OS* with Intel® Fortran Compiler,

For example, compilers_and_libraries_2017.0.065,
MKLPATH=/opt/intel/compilers_and_libraries_2017.0.065/mac/mkl/lib
MKLINCLUDE=/opt/intel/compilers_and_libraries_2017.0.065/mac/mkl/include
> ifort main. f -o main -L$(MKLPATH) -I$(MKLINCLUDE) -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -lpthread

Dyld_library_path Mac Mojave

get compiler warning:
ld64 warning: indirect library libiomp5.dylib could not be loaded: file not found: libiomp5.dylib
Or runtime error:
dyld: Library not loaded: libiomp5.dylib
Referenced from: @rpath/libmkl_intel_thread.dylib
Reason: image not found
Trace/BPT trap
Root Cause :
Since MKL 11.2, the MKL libraries for Mac OS* have been integrated into Intel® C++/Fortran Compiler Professional Edition or Intel® C++/Fortran Composer XE for Mac OS* X. The default path of MKL libraries were changed from
'/opt/intel/Compiler/11.x/0xx/Frameworks/mkl/'
to '/opt/intel/compilers_and_libraries_201*.*.***/mac/mkl'

for MKL version 11.0-11.1, please refer to '/opt/intel/Compiler/11.x/0xx/Frameworks/mkl/'
for MKL version 10.*, please refer to '/Library/Frameworks/Intel_MKL.framework/Versions/10.0.x.xxx/'

At the same time, the default OpenMP libraries (libiomp5.dylib, libiomp5.a) used by MKL are not in <MKL Libraries>/lib directory as in previous versions. They are under the Intel compiler lib directory now.
for instance, /opt/intel/compilers_and_libraries_2017.0.065/mac/compiler/lib

If you use openMP in c++ application and build with Intel C++ compiler, please firstly make sure you have enable the option 'ICC Intel® C++ 17.*.***-Language' » 'Process OpenMp Directives'.
IPP is the same, please see the article XCode link error: 'file not found: libiomp5.dylib'

Solution:

For compiler warning:
Please refer to the MKL link line advisor.
the command line could be
>ifort main. f -o main -L$(MKLPATH) -I$(MKLINCLUDE) -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -openmp -lpthread
or
ifort main. f -o main -L$(MKLPATH) -I$(MKLINCLUDE) -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -L/opt/intel/compilers_and_libraries_2017.0.065/mac/compiler/lib -liomp5 -lpthread

Problem:

Get runtime error:
like dyld: Library not loaded: @rpath/lib[mkl|ipp]_x.dylib

Root Cause:
You did not set environment variables of MKL/IPP path or did not link your application to MKL/IPP path.

Solution:

Please add the path of lib<product>.dylib in system environment before run binary (The <product> could be 'mkl' or 'ipp'). There are two methods to realize the solution:

  • Run shell script file to set environment variables, for example, setting MKL:
    > /opt/intel/compilers_and_libraries_2017.*.***/mac/mkl/bin/mklvars.sh <ia32|intel64>
  • Or write command to set directly, for example, setting MKL:
    >
    export DYLD_LIBRARY_PATH='/opt/intel/compilers_and_libraries_2017.*.***/mac/mkl/lib:$DYLD_LIBRARY_PATH

In Xcode 7.3.1 Development Environment:
Click solution/application, select 'All' and 'Combined', then find 'Linking', add 'Runpath search path' like following:
/opt/intel/compilers_and_libraries_2017.*.***/mac/mkl/lib
/opt/intel/compilers_and_libraries_2017.*.***/mac/compiler/lib

If after set the MKL library and Compiler library, you still got the error dyld: Library not loaded: @rpath/libimp5.dylib,

please consider the solutions provided inhttps://software.intel.com/en-us/forums/intel-c-compiler/topic/698021

or

adding -Wl,-rpath,@executable_path options to your build command line.

Before this solution, you must make sure you have already use Intel C++/Fortran compiler and set 'Header Search Path' and 'Library Search Path' and 'Other Link Flags'.
Learn more information about linking and compiling Intel MKL in Mac OS*, please see:
Compiling and linking MKL with Xcode*
How to link application against Intel MKL using XCode IDE

Mac Dyld Shared Cache

For more complete information about compiler optimizations, see our Optimization Notice.