error while loading shared libraries:

error while loading shared libraries:

Dear all,

I want to
run a subroutine written in FORTRAN within an engineering software package. The
compilation went well but apparently a shared library is missing as I have this
error message:

while loading shared libraries: cannot open shared object file: No
such file or directory

I am using
a Linux OS.

Any help
would be appreciated.


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

If you are running on the platform where the compiler and libraries are installed, the usual compile environment variable setting script, e.g.
source /opt/intel/bin/ intel64
will add the library path to LD_LIBRARY_PATH.
If running where the shared library isn't present, you may install the redistributable library package, or take other remedies such as copying the library over and adding it yourself to LD_LIBRARY_PATH, or linking libiomp5.a (in your final link, preferably not when making a .so).

Thanks a
lot for your answer. Actually, I can locate the shared library under
the Intel directory but the compiler cannot find it on its own. Do you know how
to add the library to LD_LIBRARY_PATH?

I suppose you mean that you are running without sourceing compilervars, and the run-time loader doesn't have the LIBRARY_PATH; you must repeat the LIBRARY_PATH setting in the compilervars script e.g.
export LD_LIBRARY_PATH=/opt/intel/composer_xe_2011_sp1.7.256/compiler/lib/intel64:$LD_LIBRARY_PATH
(use the path where you found it)

mecej4's picture

One way is to issue the following command to the shell:

$ export LD_LIBRARY_PATH=directory containing shared library>:$LD_LIBRARY_PATH

Note the colon separating the components of LD_LIBRARY_PATH

I issued
exactly this command in the terminal:

$export LD_LIBRARY_PATH=home/tph201/intel/Compiler/11.0/081/lib/intel64:$LD_LIBRARY_PATH

and the
Bash replied:

No such file or directory

I have
double-checked that the path is correct. Should I try to re-install Intel

The correct entry should have been visible in LD_LIBRARY_PATH after you sourced the ifortvars script to set up for compiling. If the libraries aren't actually present there, then uninstall and re-install would be advisable. But you said you were able to find the library, so it should be found if your LD_LIBRARY_PATH has a match.

mecej4's picture

>$export LD_LIBRARY_PATH=home/tph201/intel/Compiler/11.0/081/lib/intel64:$LD_LIBRARY_PATH

There should be a slash character ('/') preceding home.

Thanks a
lot Tim and Mecej for your patience. I managed to export the LD_LIBRARY_PATH as
followed this steps:


/home/tph201/intel/Compiler/11.0/081/lib/intel64: is a directory

export LD_LIBRARY_PATH=/home/tph201/intel/Compiler/11.0/081/lib/intel64

me:~$ echo

bash: /home/tph201/intel/Compiler/11.0/081/lib/intel64

But the
shared library is still missing when I run the code afterwards. I will try to reinstall



The same thing happened to me and I tried reinstallation but it still doesn't work

Georg Zitzlsberger (Intel)'s picture


assuming you have installed the latest Intel Composer XE 2011 Update 8. Could you please verify that is present in

Also, after sourcing the environment like this (as described in an earlier post)
source /composer_xe_2011_sp1.8.273/bin/ [intel64|ia32]

$LD_LIBRARY_PATH should point to the same directory containing

This has to be set every time you're executing your application (or you install the library to a system wide library directory).

Best regards,

Georg Zitzlsberger

same kind of error while running the matrix multiplication for mic ...sample code from vtune amplifier. 

and my bashrc 

export PATH=/opt/intel/composer_xe_2013.0.079/bin/intel64_mic/:$PATH
export INCLUDE=/opt/intel/composer_xe_2013.0.079/compiler/include/mic/:$INCLUDE
export LD_LIBRARY_PATH=/opt/intel/composer_xe_2013.0.079/compiler/lib/mic/:$LD_LIBRARY_PATH

export PATH=/opt/intel/impi/$PATH
export INCLUDE=/opt/intel/impi/$INCLUDE
export LD_LIBRARY_PATH=/opt/intel/impi/$LD_LIBRARY_PATH

./matrix.mic: error while loading shared libraries: cannot open shared object file: No such file or directory

just copy that file to mic card 

scp username@mic0:/tmp

and then run that executable.


Thank you 

kiran sonavane.

Login to leave a comment.