install problem on IMTAphy

Asked by mitsuo sakamoto

Hi,

I tried to install the IMTAphy just following the IMTAphy document. It seems that the installation was succeed just before step 10.
MKLROOT is also defined as /opt/intel/composer_xe_2011_sp1.7.256/mkl.
however at step 10, the response of install command indicates,

g++ -o .build/dbg/imtaphy/src/linkManagement/LinkManager.os -c -g -O0 -fno-inline -m64 -fopenmp -fPIC -DMKL=1 -I.include -I/usr/include/python2.6 modules/phy/imtaphy/src/linkManagement/LinkManager.cpp
In file included from .include/IMTAPHY/Transmission.hpp:37,
                 from modules/phy/imtaphy/src/Transmission.cpp:30:
.include/IMTAPHY/detail/LinearAlgebra.hpp:49: fatal error: mkl_vml_functions.h: No such file or directory
compilation terminated.

Of course there are many error messages. If whole messages are necessary to review it, please let me know.

could you advice me that why compiler cannot find mkl function header file?

thanks in advance and best regards,

Mitsuo Sakamoto

Question information

Language:
English Edit question
Status:
Solved
For:
IMTAphy Edit question
Assignee:
No assignee Edit question
Solved by:
mitsuo sakamoto
Solved:
Last query:
Last reply:
Revision history for this message
Jan (jan-ellenbeck) said :
#1

Hi,

the include directory is missing, the compiler should be invoked like this:
g++ -o .build/dbg/imtaphy/src/Transmission.os -c -g -O0 -fno-inline -Wunused-variable -m64 -fopenmp -fPIC -DMKL=1 -Iinclude -I/usr/include/python2.6 -I/opt/intel/composerxe-2011.2.137/mkl/include modules/phy/imtaphy/src/Transmission.cpp

My guess is you don't have the $INCLUDE and $LIBRARY_PATH set appropriately. This is needed (and assumed to be there once MKLROOT is set) by modules/phy/imtaphy/SConscript. For me it looks like this:

openwns-sdk$ echo $INCLUDE
/opt/intel/composerxe-2011.2.137/mkl/include

echo $LIBRARY_PATH
/opt/intel/composerxe-2011.2.137/compiler/lib/intel64:/opt/intel/composerxe-2011.2.137/mkl/lib/intel64

Are you setting the Intel environment variables using the script in $MKLROOT/bin/mklvars.sh ? That script should set the other environment variables as well. Based on your comments above, I think you should set these things by sourcing the Intel script like this (note the leading "." followed by a space " "):

. /opt/intel/composer_xe_2011_sp1.7.256/mkl/bin/mklvars.sh intel64

Check if that helps and if $MKLROOT, $INCLUDE, and $LIBRARY_PATH are set correctly. I will add this to the guidelines.

Cheers
Jan

Revision history for this message
mitsuo sakamoto (mitsuo-sakamoto) said :
#2

Hi Jan,

many thanks for your quick reply.
Of course, I used mklvars.sh. but it was as ". /opt/intel/mkl/bin/mklvars.sh intel64" in .profile.
I update the command path and location. Now it is in .bashrc and ". /opt/intel/composer_xe_2011_sp1.7.256/mkl/bin/mklvars.sh intel64".
after the update, $INCLUDE and $LIBRARY_PATH are correctly set. I can see,

Install file: ".build/opt/openwns-tcp/libtcp.so" as "sandbox/opt/lib/libtcp.so"
scons: done building targets.

many thanks.

regards,

Mitsuo

Revision history for this message
Stojan Kitanov (stojankitanov) said :
#3

Hi Jan,

I installed the IMTAPHY successfully. However I don't understand how to set up the MKLROOT, INCLUDE and LIBRARY_PATH.
Everytime when I open and I type the command manually:

. /opt/intel/composer_xe_2011_sp1.7.256/mkl/bin/mklvars.sh intel64

Then when I type the echo command for $MKLROOT $INCLUDE, $LIBRARY_PATH I receive a response.

So I would like to know how to avoid the constant typing.

In which file I should set up this line (is it mklvars.sh), and where exactly.

Regards,

Stojan

Revision history for this message
Jan (jan-ellenbeck) said :
#4

Stojan,

you can add the ". /opt/intel/composer_xe_2011_sp1.7.256/mkl/bin/mklvars.sh intel64" line to the configuration file of your shell. E.g., for bash, just add it as the last line to your "~/.bashrc" file.

Cheers
Jan

Revision history for this message
Stojan Kitanov (stojankitanov) said :
#5

Hi Jan,

Thank you very much for your assistance.

I solved the problem.

Cheers,

Stojan

P.S. I add the notes for others to understand

cd $HOME
gedit ~/.bashrc (to edit the file)

add
. /opt/intel/composer_xe_2011_sp1.7.256/mkl/bin/mklvars.sh intel64 (for 64 bit system)

. /opt/intel/composer_xe_2011_sp1.7.256/mkl/bin/mklvars.sh ia32 (for 32 bit system)