I am trying to distribute my VS2012/MKL code to a separate computer. When on that computer I get a vcomp.dll not found. I understand that by using vcomp.dll, the application is using the MS OpenMP instead of libiomp.
I am trying to get around this dependency on MS OpenMP and searching through forums I made the following changes:
- Added the <intel directory>\compiler\lib\intel64 directory to "VC++ Directories"->Reference Directories and Library Directories
- Added libiomp5md.lib to Linker->Additional Dependencies
- Added vcomp.lib to Linker->Ignore Specific Default Libraries
- Added the <intel directory>\compiler\lib\intel64 to my Linker->Additional Library Directories for good measure.
Each change still loads vcomp110.dll. Is additional steps I am missing to force VS to use libiomp instead of vcomp?
I cannot provide reproduce-able code to attach.
It may be the case that one of the libraries that your application is linked with contains references to vcomp.dll. Use the Dependency Walker tool to hunt down the specific DLL that is linked to vcomp.dll.
Any object built with CL -openmp would have a reference to vcomp but libiomp would take care of it.