I am using Intel Math Kernel Library (MKL) 10.3 in Visual Studio (VS) 2010 with Intel Parallel Studio Composer XE 2011. I am able to use the F77 interfaces to Lapack in MKL, but could not figure out how to use the F95 interfaces. What should I do in Visual Studio so the linker finds the F95 interface?

- 17,879
- 13
- 52
- 68

- 144
- 9
-
1Try the Intel Link Line Advisor -- http://software.intel.com/en-us/articles/intel-mkl-link-line-advisor – High Performance Mark Oct 16 '13 at 20:11
-
I know about the line advisor, but I do not know where in Visual Studio to put all that. In fact, the line advisor told me I need only to insert lapack95. I located lapack95.f90 in the MKL installation, and I see its source code, it is just a set of INTERFCAE definitions. I even put the lapack95.f90 code as part of my project, just with my f90 code, but did not work. I am missing something. – Echeban Oct 17 '13 at 17:26
1 Answers
This might be the answer.
Decide which of the flavours of Lapack95 you want to use, on my installation I see module files, at ..\mkl\include\intel64\lp64
for lapack95
and for mkl95_lapack
. I always use the latter, for reasons I forget. I think the differences are down to the specification of interfaces to the functions in the library; I expect the documentation will tell you all this and more. Modules of the same name exist in ..\mkl\include\intel64\ilp64
.
Include a line such as
use mkl_lapack95
in your source. In the Properties window for your VS project select Fortran | Libraries and set Use Intel Math Kernel Library to one of the values in the drop-down list. You should now be able to compile, if not link, your program.
To link, open the Properties page again, and go to the Linker section. Under General write into Additional Libraries Directories the path to the directory containing the .lib
file(s) you want to link. Then, under Input | Additional Dependencies, list the names of the libraries (the .lib
files) you want to link. I always think that there should be an easier way to tell VS to link to MKL libraries but if there is I haven't found it.
Now you should be good to go.

- 77,191
- 7
- 105
- 161