Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Beginner
17 Views

Lapack undefined symbols

Im running ifort 12.0 with command:
ifort -r8 main.f90 -lmkl_core -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_lapack95_lp64
and all is ok with a fortran95 call to the lapack routine gesv. However, if I replace gesv by calls to getrf and getri, it tells me these are "Undefined symbols". Why does it recognise gesv but not getrf or getri?
0 Kudos
3 Replies
Highlighted
Black Belt
17 Views

Do you have the USE mkl95_lapack at the top of the calling subroutine? It should result in getrf and getri being translated to other functions, eventually down to the f77 ?getrf and ?getri which are provided in libmkl_lapack95_lp64. You may need to assure that you have the include path (-I) for the mkl/include/lp64 in your installation.
0 Kudos
Highlighted
Beginner
17 Views

Oh dear, it's an old code, so I only just noticed it has at the top "use lapack95, only: gesv", how embarrassing... In any case, is there a difference between "use lapack95" and "usemkl95_lapac"?
0 Kudos
Highlighted
Black Belt
17 Views

That's a good point. USE lapack95 and mkl95_lapack should work interchangeably in this case.
0 Kudos