Newbie MKL for linux

Newbie MKL for linux

I have installed mkl7.01 for linux which seemed to go smoothly but nowhere in the documentation can I see any instructions as to how to use it!
I am using suse9.2 on a dual xeon system.
I have sourced
I presume I need to link to the libraries to use, I am trying to compile the example file vdrnggaussian.c using icc (or gcc if necessary). I presume I need a compile command of the form
icc vdrnggaussian.c -o TEST -L/opt/intel/mkl701/ -l something
where /opt/intel/mkl701 is the install directory.
I know this info must be somewhere (examples are pretty useless without it) but I can't for the life of me find it.
Any help would be greatfully recieved.

4 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

Normally, your -L path would extend all the way down to the /lib directory where the .a or .so files you want are located. If you wanted both lapack and core MKL you would specify both of those with -l
As I sometimes use Windows, I would not dare to name the executable TEST. e.g.
icc vdrnggaussian.c -o yourexe -L/opt/intel/mkl70/lib/32/ -lmkl_lapack -lmkl_p4
If that order works for you. If your is working, it should take care of the -L stuff by the LD_LIBRARY_PATH.
Maybe the documentation can't keep up with the frequent minor changes, and the probability that many people will change the names themselves.

If you're looking for documentation, the doc directory is a good place to look. The index.htm file describes the documentation options. In this case I think the mkluse.htm file would be of use as it is the technical user notes and contains explanations of the libraries provided as well as examples for linking.

Also, included with the example files are makefiles which contain comments describing how they can be used.


Thanks for the help so far I haven't had much luck with specifying the libraries myself, it complains it can't find -lmkl_lapack when I try using LD_LIBRARY_PATH and does this if I specify the pathe

/tmp/iccYtuS7b.o(.text+0x1f): In function `main':
: undefined reference to `vslNewStream'
/tmp/iccYtuS7b.o(.text+0x5f): In function `main':
: undefined reference to `vdRngGaussian'
/tmp/iccYtuS7b.o(.text+0x237): In function `main':
: undefined reference to `vslDeleteStream'

But as suggested I have managed to get the examples working with the provided make file so I'll try and figure it out from those.
Thanks again for the help.

Leave a Comment

Please sign in to add a comment. Not a member? Join today