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

Missing mkl_intel_s.lib in 32-bit MKL install, maybe?

David-F8
Beginner
1,163 Views

Hi everyone

I've installed the Fortran compiler via the oneAPI base and HPC toolkits and installed the standalone 32-bit MKL (oneAPI base toolkit for Windows 32-bit).

Our project fails to build due to a dependency on mkl_intel_s.lib

Q1. Is anyone able to confirm that this lib is no longer part of the 32-bit MKL package?

Q2. Does anyone have any recommendations on a way forward for projects that still rely on the CVF/stdcall calling conventions (I'm assuming that's why mkl_intel_s.lib is required).

(For anyone from Intel: attempting to switch the calling convention caused an internal compiler error).

 

0 Kudos
8 Replies
Barbara_P_Intel
Moderator
1,057 Views

Starting with oneAPI 2022.1 Base Toolkit, the 32 bit libraries for MKL and IPP on Windows are packaged separately.  See the Release Notes where it says

  • 32-bit Intel® Integrated Performance Primitives (Intel® IPP) and 32-bit Intel® oneAPI Math Kernel Library (oneMKL) on Windows* OS are provided separately as part of Intel® oneAPI Base Toolkit 32-bit package. It can be downloaded here as an add-on that requires Intel® oneAPI Base Toolkit to be installed first.

Now why did we have to do that?  There is a limit to the size of an installation package on Windows and the Base Toolkit hit that limit, so those two libraries were selected to be packaged separately.

 

P.S. This is also mentioned in the oneMKL Release Notes.

 

0 Kudos
JNichols
New Contributor I
1,040 Views

I've installed the Fortran compiler via the oneAPI base and HPC toolkits and installed the standalone 32-bit MKL (oneAPI base toolkit for Windows 32-bit).

--------------------------------------------------------------------------------------------------------

 

I gather you actually did install the 32 bit kit.  I used it recently and it worked for me.  I suggest you ask the same question on the MKL forum, you are more likely to strike some one who knows the answer, although there are people on this forum who probably know, but I am not one of them.  

 

 

0 Kudos
David-F8
Beginner
1,020 Views

Hey, thanks @JNichols 

Yes, I have installed the 32-bit kit and it also works for me. 

But we have one project that requires mkl_intel_s.lib and that file is not present.  Would you be able to confirm whether or not your install provided the mkl_intel_s.lib file?  The path to the 32-bit lib files on my machine is C:\Program Files (x86)\Intel\oneAPI\mkl\2022.0.3\lib\ia32.  Is the file mkl_intel_s.lib in there?  It would be helpful to know whether something has gone wrong with my install (unlikely as three other colleagues have the same results as me) or whether mkl_intel_s.lib is no longer being provided in the 32-bit kit.

0 Kudos
JNichols
New Contributor I
996 Views

Screenshot 2022-03-31 015931.png

All there is -- I suggest you try mkl Forum and sort out which library you need to make the calls. 

0 Kudos
JNichols
New Contributor I
986 Views

Can we take this to a private email - you can send one thru this Intel system. 

0 Kudos
JNichols
New Contributor I
983 Views

They appear to have possibly renamed them to the last two on the above list, if you do a comparison from 2020 PSXE MKL and oneapi?  

0 Kudos
mecej4
Honored Contributor III
962 Views

I think that the 32-bit MKL libraries with support for the Stdcall ABI were available in older distributions of MKL, but were not installed by default. You had to select something similar to "Compaq Fortran" or "PGI Fortran" compatible libraries when installing MKL in order to install files such as the following, which are in the Parallel Studio 2020.4.311 installation:

09/17/2020  11:54 PM        13,535,872 mkl_intel_s.lib
09/18/2020  12:39 AM        14,465,594 mkl_intel_s_dll.lib

 Note that mixing Intel Fortran libraries and DLLs with MKL libraries and DLLs across different releases may sometimes cause failure to link properly.

Over the history of Intel Fortran, Stdcall support was provided for help with making the transition from Digital/Compaq Visual Fortran to Intel Fortran, and that transition occurred nearly two decades ago. 

0 Kudos
JohnNichols
Valued Contributor III
940 Views

The MKL Forum found you. 

I found two copies of the library in my backups of my computer from a few years ago.   

I tried to install PXSE on Windows 11 - Preview and it failed to install at all.  

 

0 Kudos
Reply