Errors linking Intel® compilers with Intel® MKL 10.x

Symptoms

When building with Intel® Math Kernel Library for Windows* version 10.0 using the xilink linker from the command line or within the Microsoft Visual Studio* IDE, the following error messages may occur:

Severe: **Internal compiler error: internal abort** Please report this error along with the circumstances in which it occurred in a Software Problem Report. Note: File and line given may not be explicit cause of this error.
Link: error error_during_IPO_compilation: problem during multi-file optimization compilation (code 3)
Link: error error_during_IPO_compilation: problem during multi-file optimization compilation (code 3) or(0): internal error: backend signals
xilink: error error_during_IPO_compilation: problem during multi-file optimization compilation (code 4)
xilink: error error_during_IPO_compilation: problem during multi-file optimization compilation (code 4)

When using the Intel® C++ Compiler for Windows*, these errors have occurred when the /Qipo compiler option is used with the xilink linker from the command line.

When using the Intel® Visual Fortran Compiler for Windows*, these errors have occurred when building within the Visual Studio IDE, which uses the xlink linker.

Solution

Intel® Math Kernel Library for Windows version 10.0 introduced new library naming conventions, with "dummy lib" references to the older Intel® MKL libraries and were given for backward compatibility. However, there is a format problem with the Intel MKL "dummy libs" files that is causing problems for the Intel xilink tool. Correct the problem by modifying link information for the command line or the Visual Studio link information to specify the new names of the 10.0 Intel MKL libraries.

The dummy or compatibility libraries have been removed from Intel® MKL 10.2 or later versions, and if you using one of the latest versions, this error will not occur.

Linking from the Command Line

When link errors occur, correct the problem by replacing references to the Intel MKL dummy libraries on the link command with explicit references to the libraries listed in the dummy libraries. See the explicit Intel MKL library references listed below.

Linking from within Microsoft Visual Studio

In the Visual Studio IDE, replace the references to the dummy libraries in Project » Configuration Properties » Linker &» Input » Additional Dependencies. See the explicit Intel MKL library references listed below.

For IA-32 Compilers
Intel MKL dummy library Replace with explicit Intel MKL library references
mkl_c_dll.lib mkl_intel_c_dll.lib mkl_intel_thread_dll.lib mkl_core_dll.lib
mkl_s_dll.lib mkl_intel_s_dll.lib mkl_intel_thread_dll.lib mkl_core_dll.lib
mkl_c.lib mkl_intel_c.lib mkl_intel_thread.lib mkl_core.lib
mkl_s.lib mkl_intel_s.lib mkl_intel_thread.lib mkl_core.lib
mkl_scalapack_dll.lib mkl_scalapack_core_dll.lib
mkl_scalapack.lib mkl_scalapack_core.lib
mkl_cdft_dll.lib mkl_cdft_core_dll.lib
mkl_cdft.lib mkl_cdft_core.lib
For Intel® 64 Compilers
Intel MKL dummy library Replace with explicit Intel MKL library references
mkl_dll.lib mkl_intel_lp64_dll.lib mkl_intel_thread_dll.lib mkl_core_dll.lib
mkl_em64t.lib mkl_intel_lp64.lib mkl_intel_thread.lib mkl_core.lib.lib
mkl_scalapack_dll.lib mkl_scalapack_lp64_dll.lib
mkl_scalapack.lib mkl_scalapack_lp64.lib
mkl_solver.lib mkl_solver_lp64.lib
mkl_cdft_dll.lib mkl_cdft_core_dll.lib
mkl_cdft.lib mkl_cdft_core.lib
For IA-64 [Intel® Itanium®] Compilers
Intel MKL dummy library Replace with explicit Intel MKL library references
mkl_dll.lib mkl_intel_lp64_dll.lib mkl_intel_thread_dll.lib mkl_core_dll.lib
mkl_ipf.lib mkl_intel_lp64.lib mkl_intel_thread.lib mkl_core.lib
mkl_scalapack_dll.lib mkl_scalapack_lp64_dll.lib
mkl_scalapack.lib mkl_scalapack_lp64.lib
mkl_solver.lib mkl_solver_lp64.lib
mkl_cdft_dll.lib mkl_cdft_core_dll.lib
mkl_cdft.lib mkl_cdft_core.lib
Пожалуйста, обратитесь к странице Уведомление об оптимизации для более подробной информации относительно производительности и оптимизации в программных продуктах компании Intel.