Intel® oneAPI Math Kernel Library
Ask questions and share information with other developers who use Intel® Math Kernel Library.
6977 Discussions

"Initializing libguide40.lib, but found libiomp5md.lib already initialized" run-time error

870530
Beginner
344 Views
My code creates a process that uses the IPP\MKL libraries. As the process runs, I get the following message: "Initializing libguide40.lib, but found libiomp5md.lib already initialized" ( the full output that describes the problem is as followos:
OMP: Warning #2: Cannot open message catalog "1037\libguide40ui.dll":
OMP: System error #126: The specified module could not be found.
OMP: Info #3: Default messages will be used.
OMP: Error #15: Initializing libguide40.dll, but found libiomp5md.dll already initialized).
I made sure that all the projects at my code are linked with libiomp5md.lib (and not with libguide40.lib), but I still get that message.
I think it may be connected, somehow, to mkl_c.lib, since sometimes after the message is displayed and I click ok, I get anoter message: error at mkl_c.lib

Moreover, as can be seen in the full output above, the application tries to use libGuide40ui.dll, at the following path:
C:\Program Files\Intel\Compiler\11.0\075\cpp\bin\ia32\1037 . The directory C:\Program Files\Intel\Compiler\11.0\075\cpp\bin\ia32\1037 doesn't exist (it wasn't created by the installer), but, on the other hand, there are other directories, C:\Program Files\Intel\Compiler\11.0\075\cpp\bin\ia32\1041 and
C:\Program Files\Intel\Compiler\11.0\075\cpp\bin\ia32\1033 that include both libguide40UI.dll and libiomp5UI.dll

Have anyone encountered this problem and know how to solve it?

Thanks,
David.
0 Kudos
2 Replies
TimP
Honored Contributor III
344 Views
If you wish to link the OpenMP library several places in your project, you should be using the dynamic library. I would hope that would enable you to mix debug and release objects, if that is your intent. If you choose the static version, I believe you should link it only in the final link step, preferably by ifort /Qopenmp-lib:static. The non-thread-safe mkl_c.lib doesn't belong in your build; it would appear to indicate that you have some part of the build set up in VS2003 or earlier without /Qopenmp. If you have stale objects, try rebuilding all with consistent VS and compiler versions and settings.
0 Kudos
Ying_H_Intel
Employee
344 Views

Thank you for the suggestion, Tim.

Hello Divid,
It looks a known issuediscribledin several KBs, i.e<http://software.intel.com/en-us/articles/opm-abort-initializing-libguide40dll/>. Theremust beimplicitly link to libguide40.lib ( for example, by compiler option, previous MKL and IPP version use libguide40 by default, or thirdparty library for example, OpenCV library) in your application.Please check them and remove it if possible. or if the problem insists, could you please providea test case so we can see what is the problem? (you can provide by private)

Regards,
Ying
0 Kudos
Reply