Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.

porting old code, finding functions

Francis_P_1
Beginner
1,274 Views

I'm porting over some old f77 code from another platform, and trying to figure out how to deal with some old function calls.

I'm getting 'undefined reference to' errors with the functions dgesl and dgefa.    These seem to be part of the lapack which is supposed to be included in mkl.

And to be clear, I'm not well versed in fortran, I'm just the lucky guy who got handed the project, so answer like you're talking to someone in a basics class.

0 Kudos
3 Replies
mecej4
Honored Contributor III
1,274 Views

No, dgefa and dgesl are part of Linpack. You can download the Linpack source from http://www.netlib.org/linpack/index.html, if you wish, but it would be better to use the Lapack equivalent, dgesv, which is contained in MKL.

0 Kudos
Francis_P_1
Beginner
1,274 Views

Trying to avoid additional libraries if I can.

Would I just swap out the dgefa and dgesl calls with the dgesv call ?

0 Kudos
mecej4
Honored Contributor III
1,274 Views

No, you should always look up the documentation of a routine before using it for the first time. The argument lists are almost always different.

If you use the Lapack95 interface, the call can be as simple as CALL GESV(A,b), but with that call you need to add USE LAPACK95 in the caller and consult the MKL Link Line Advisor for building. There are examples of using GESV in the Lapack95 sub-directory of the MKL examples.

0 Kudos
Reply