If I want to distribute a custom MKL on the Windows platform, what other DLL's also need to be distributed?
The documentation I have says "To enable use of your custom DLL in a threaded mode, distribute libiomp5md.dll along with the custom DLL.".
From my initial testing, it appears that this is not the only one needed.
I can probably figure this out through the process of elimination, but there are quite a few DLL's in the bin folder.
I'm evaluating MKL version 10.2.3.029.
Darrin A. Smith
Could you please tellme more information, such as
1. which routines in the custom dll
2. which MKLlibrary you are using whenyou build the Custom dll?
3. Are you using the custom DLL tools under MKL install directory?
For example, i get a custom dll using default setting (nmake ia32 as below), which only depend on the libiomp5md.dll as the documentation said.
I just read your another post in the forum and get some information from there.
In above custom DLL builder example, itis linkingstatic library like mkl_intel_c.lib mkl_intel_thread.lib mkl_core.lib, except the libiomp5md.lib(which is import library of libiomp5md.dll). Then your custom dll don't depend on any other MKL library (except the libiomp5md.dll).
If you use the command,
link /DLL /MACHINE:IX86 /def:user.def mkl_intel_c_dll.lib mkl_intel_thread_dll.lib mkl_core_dll.lib libiomp5md.lib user32.lib /out:mkl.dll
Since "mkl_intel_c_dll.lib, mkl_intel_thread_dll.lib mkl_core_dll.lib" are dynamic interface library, your custom dll will depend on MKL dynamic library naturally.
Hope it helps,
I didn't think of using dependency walker tool. Evidently, I need libiomp5md.dll, mkl_core.dll, and mkl_intel_thread.dll. It doesn't mention that I need mkl_intel_c.dll, perhaps because the exported functions I chose don't require that library.
Wouldn't run until I also included mkl_def.dll in the application folder, even thought this wasn't listed as a dependency. I'll get this figured out eventually.