- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi experts
I am trying compile Bonmin (An mathematical programming software) using icc, icpc and mkl from Intel System Studio 2016 (on Opensuse Linux 13.1). Bonmin requires lapack and blas functions. So, I am compiling Bonmin using:
-L/opt/intel/lib/intel64/ -L/opt/intel/compilers_and_libraries/linux/mkl/lib/intel64/ -lmkl_intel_lp64 -lmkl_sequential -lmkl_core -liomp5 -lpthread -lm
The compilation seems work fine. I got an executable called Bonmin. However, when I try run Bonmin, I get the following error message:
Intel MKL FATAL ERROR: Error on loading function mkl_blas_avx_xdcopy
Directories /opt/intel/lib/intel64/ and /opt/intel/compilers_and_libraries/linux/mkl/lib/intel64/ are already in my LD_LIBRARY_PATH. I checked file libmkl_avx is /opt/intel/compilers_and_libraries/linux/mkl/lib/intel64/ , so I do not have any idea about what is wrong.
If I compile Bonmin using
-lmkl_avx -lmkl_intel_lp64 -lmkl_sequential -lmkl_core -liomp5 -lpthread -lm
I get the same error...
Does anyone have some idea or tip to help me?
Thanks in Advanced
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi, can you please try adding '-Wl,-rpath,/opt/intel/compilers_and_libraries/linux/mkl/lib/intel64' to your link line if Bonmin build system uses a compiler to link the final executable. If it uses just ld, then can you please try adding '-rpath /opt/intel/compilers_and_libraries/linux/mkl/lib/intel64'?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you for your answer, Roman!
Unfortunatelly, use "-Wl,-rpath,/opt/intel/compilers_and_libraries/linux/mkl/lib/intel64" did not have any effect... I could not compile Bonmin just using "-rpath,/opt/intel/compilers_and_libraries/linux/mkl/lib/intel64"... :(
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Wendel,
mkl_blas_avx_xdcopy is in libmkl_avx.so or libmkl_core.a
[yhu5@prc-mic01 intel64]$ nm -Ag *.* |grep mkl_blas_avx_xdcopy
libmkl_avx.so:00000000008b98a0 T mkl_blas_avx_xdcopy
libmkl_core.a:_xdcopy_fb.o: U mkl_blas_avx_xdcopy
libmkl_core.a:_avx_xdcopy.o:0000000000000000 T mkl_blas_avx_xdcopy
libmkl_core.a:_avx_xzcopy.o: U mkl_blas_avx_xdcopy
[yhu5@prc-mic01 intel64]$ pwd
/opt/intel/compilers_and_libraries/linux/mkl/lib/intel64
is it possible for you to link static mkl , for example,
1)
/opt/intel/compilers_and_libraries/linux/mkl/lib/intel64/libmkl_intel_lp64.a /opt/intel/compilers_and_libraries/linux/mkl/lib/intel64/libmkl_sequential.a /opt/intel/compilers_and_libraries/linux/mkl/lib/intel64/libmkl_core.a -liomp5 -lpthread
or 2) use --no-as-needed
I found one post in the forum, may be help.
https://software.intel.com/en-us/forums/intel-math-kernel-library/topic/...
If the symbol are coming from MKL, then either rebuild the software with --no-as-needed option (you mentioned, the build is other person)
or 3) use LD_PRELOAD=opt/intel/mkl/lib/intel64/libmkl_avx.so, then run your application.
Please let us know if any result.
Best Regards,
Ying

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page