用C++链接MKL库

问题描述 投票:1回答:1

我在用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

谁能帮帮我?

c++ intel-mkl
1个回答
0
投票

我认为你应该使用-DMKL_ILP64 -I"%MKLROOT%"\include for g++.你绝对不应该选择Intel(R) Fortran作为编译器,因为你不是在编译Fortran程序。

© www.soinside.com 2019 - 2024. All rights reserved.