Doesn't that indicate precisely what Prentice said? ssh isn't picking up your remote .bashrc file and executing it.

Try just doing "mpirun -n 1 -H hpcnode1 printenv" and see if you get the envars you expect from you .bashrc. If not, talk to your sysadmin about how to fix the problem - could be a system config issue, permissions on your .bashrc (typical source of this kind of trouble), etc.

On May 10, 2010, at 6:15 AM, Miguel Ángel Vázquez wrote:

Version: OMPI 1.3.3

Shell: bash

I already fixed the problem with a shell script like
export LD_LIBRARY_PATH= ...

But, it seems that openmpi look neither bash_profile not .bashrc.

Thank you,


2010/5/10 Ralph Castain <>
What version of OMPI? What shell?

On May 10, 2010, at 2:05 AM, Miguel Ángel Vázquez wrote:

Hello Prentice,

Thank you for your advice but that doesn't solve the problem.

The non-login bash updates properly the $LD_LIBRARY_PATH value.

Any other idea?



2010/5/7 Prentice Bisbal <>

Miguel Ángel Vázquez wrote:
> Dear all,
> I am trying to run a C++ program which uses dynamic libraries under mpi.
> The compilation command looks like:
>  mpiCC `pkg-config --cflags itpp`  -o montecarlo  montecarlo.cpp
> `pkg-config --libs itpp`
> And it works if I executed it in one machine:
> mpirun -np 2 -H localhost montecarlo
> I tested this both in the "master node" and in the "compute nodes" and
> it works. However, when I try to run it with two different machines:
> mpirun -np 2 -H localhost,hpcnode1 montecarlo
> The program claims that it can't find the shared libraries:
> montecarlo: error while loading shared libraries: cannot
> open shared object file: No such file or directory
> The LD_LIBRARY_PATH is set properly at every machine, any idea where the
> problem is? I attached you the config.log and the result of the omp-info
> --all
> Thank you in advance,
> Miguel


Shells behave differently depending on whether it is an interactive
login shell or a non-interactive shell. For example, the bash shell uses
.bash_profile in case, but .bashrc in the other. Check the documentation
for your shell and see what files it uses in each case, and make sure
the non-login config file has the necessary settings for your MPI jobs.
 It sounds like your login shell environment is okay, but your non-login
environment isn't setup correctly. This is a common problem.

I use bash, and to keep it simple, my .bash_profile is just a symbolic
link to .bashrc. That way, both shell types have the same environment.
This isn't always a good idea, but in my case it's fine.

users mailing list

users mailing list

users mailing list

users mailing list