- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
A previous post (Sept. 3) said "You must link with the lapack library, before the mkl library, if you require functions from it."
My question is, "What is the lapack libraries and mkl libraries?"
The mkl directory has many libraries, most all of which I don't know what they do. And what is an "explicit" link?
My thought would be something like:
-L/opt/intel/mkl60/lib/32 -lmkl
to "explicitly" link to mkl, since one of the libraries in the directory is libmkl.so . Or is an explicit link simply a path to the mkl directory
-L/opt/intel/mkl60/lib/32
Would an "explicit" link lapack be:
-L/opt/intel/mkl60/lib/32 -lmkl_lapack
The Fortran compiler's guide lists 7 default libraries the compiler always specifies (begining of Libraries chapter). But if there is a -L to the directory doesn't the linker searches all the libraries in some way that satisfies all the external appropriately? Why do I need to "explicitly" link.
Sorry for such a basic question. But shouldn't Intel put a paragraph about this in their Fortran compiler's guide somewhere? (Also, I am not a moocher. Our department has bought at least a dozen Intel licenses and one year support packages recently as we begin transitioning to Linux. It's just taking awhile for me to get our IT people to give me one of them.)
Link Copied
2 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Yes, you can link with the -L and -l specifications you mentioned. I agree that a few working examples would be useful. As a paying customer, you might make that suggestion on premier.intel.com.
There should be a short explanation of which libraries are in your version. Typically, for mkl, there are alternate versions, one requiring a p4 compatible CPU, one requiring p3 compatibility, and one "default." Then there is the one for lapack, and there is a libguide to support openmp in case a run-time kit is being installed separately from the Intel compiler, which already has that library. I hope I've represented it reasonably well.
With a given binary build, you can use ldd to find out which libraries it will require to run.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks.
I found very good info in /opt/intel/mkl60/doc/mkluse.htm
This info does not seem to be in the Intel Fortran Compiler User's Guide (which is what I was using) but is essential if one is to properly use the Intel math and lapack libraries.
Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page