I'm having difficulty launching an Open MPI job onto a machine that is
running the Bourne shell.
Here's my basic setup. I have two machines, one is an x86-based
machine running bash and the other is a Cell-based machine running
Bourne shell. I'm running mpirun from the x86 machine, which launches
a C++ MPI application onto the Cell machine. I get the following error:
error while loading shared libraries: libstdc++.so.6: cannot open
shared object file: No such file or directory
The basic problem is that LD_LIBRARY_PATH needs to be set to the
directory that contains libstdc++.so.6 for the Cell. I set the
following line in .profile:
which is the path to the PPC libraries for Cell.
Now if I log directly into the Cell machine and run the program
directly from the command line, I don't get the above error. But
mpirun still fails, even after setting LD_LIBRARY_PATH in .profile.
As a sanity check, I did the following. I ran the following command
from the x86 machine:
mpirun -np 1 --host cab0 env
which, among others things, shows me the following value:
If I log into the Cell machine and run env directly from the command
line, I get the following value:
So it appears that .profile gets sourced when I log in but not when
However, according to the OpenMPI FAQ (http://www.open-mpi.org/faq/?category=running#adding-ompi-to-path
), mpirun is supposed to directly call .profile since Bourne shell
doesn't automatically call it for non-interactive shells.
Does anyone have any insight as to why my environment isn't being set
Hahn Kim, hgk_at_[hidden]
MIT Lincoln Laboratory
244 Wood St., Lexington, MA 02420
Tel: 781-981-0940, Fax: 781-981-5255