我在用C++将Intel MKL库链接到我的代码时遇到了很多麻烦。我从这个链接下载了MKL库。https:/software.intel.comcontentwwwusendeveloptoolsmath-kernel-librarychoose-downloadwindows.html。
然后它说要使用MKL Link Line Advisor来获得合适的编译器选项,我遇到了很多麻烦。作为参考,我使用的是Windows,g++ 8.1.0和MinGW-W64。下面是部分内容。
英特尔产品: 英特尔MKL 2020,因为我刚刚下载了它。
操作系统:Windows,没有问题。
编译器:Intel(R) Fortran? Intel(R) Fortran? 我使用g++来编译我的C++代码,所以我不知道,因为那个选项是不可用的。在stackoverflow上做了一些搜索,似乎正确的选择是Intel(R)Fortran。
架构。Intel(R) 64, 因为我有一个64位的操作系统?
动态静态链接。我猜是静态链接吧
介面层:64位,因为我有64位操作系统?64位,因为我有一个64位的操作系统?
线程层:OpenMP,因为我现在的C++代码使用的是64位操作系统?OpenMP, 因为我现在的C++代码使用-fopenmp?
OpenMP库。Intel(R) libiomp5. 只有一个选项,所以这里没有问题。
Fortran95接口。BLAS95和LAPACK95
上述选择给我提供了以下编译器选项
/4I8 /module:"%MKLROOT%"\include\intel64/ilp64 -I"%MKLROOT%"\include
而这导致编译器出错。
/4I8: No such file or directory
谁能帮帮我?
我认为你应该使用-DMKL_ILP64 -I"%MKLROOT%"\include for g++.你绝对不应该选择Intel(R) Fortran作为编译器,因为你不是在编译Fortran程序。