Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
27429 Discussions

Link error with /Qmkl:parallel, cannot open file 'mkl_intel_c_dll.lib'

NilsA
Beginner
431 Views

I am trying to use MKL, but if I activate with '/Qmkl:parallel' a link error is obtained. Also the redist folder (C:\Program Files (x86)\Intel\oneAPI\mkl\2022.1.0\redist\intel64) of mkl does not contain the 'mkl_intel_c_dll.lib'. 

Is it a problem with the version or why do I need this lib, which is not contained in the redistributable folder?

Labels (1)
0 Kudos
1 Solution
Ron_Green
Moderator
371 Views

Redistributable Libs: the intent is to allow an executable built on another system to run without having to install a full development environment on the target host.   A developer on a development host builds an executable.  they then distribute that to end users.  The redist libs are intended for that end user host system.  the end user doesn't want or need a full VS and compiler installation in this scenario.  Because of this, the Redist Libs only have dynamic libraries, not static.  Static libs are used to create a binary on a development platform.  

View solution in original post

5 Replies
mecej4
Black Belt
405 Views

You will not find any *.LIB files in the redistributables folder. Look instead in a folder such as c:\...\OneAPI\mkl\latest\lib\intel64.

Are you trying to link OBJ files produced by OneAPI 2022.1 compilers with libraries that were generated using an older version of the compiler? We need more details regarding the linking command used, etc.

VRaghavan
Beginner
296 Views

Hi, 

 

I am facing the same issue. In my case, the source files when initially generated were compiled in Intel Fortran compiler 18.0 with Visual Studio 2015. I am currently using the Intel Fortran Compiler Classic 2021.5.0 in Visual Studio 2019. Also I just checked and mkl_intel_c_dll.lib is not present there. What can I use instead or can I download this somewhere? 

 

 

Barbara_P_Intel
Moderator
266 Views

MKL is part of the oneAPI Base Toolkit. You can either download the Base Toolkit or download just the oneMKL libraries from the Standalone Component page.

Ron_Green
Moderator
372 Views

Redistributable Libs: the intent is to allow an executable built on another system to run without having to install a full development environment on the target host.   A developer on a development host builds an executable.  they then distribute that to end users.  The redist libs are intended for that end user host system.  the end user doesn't want or need a full VS and compiler installation in this scenario.  Because of this, the Redist Libs only have dynamic libraries, not static.  Static libs are used to create a binary on a development platform.  

Reply