Open MPI logo

Open MPI User's Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Open MPI User's mailing list

Subject: Re: [OMPI users] mpirun: symbol lookup error: mpirun: undefined symbol:orte_xml_fp
From: Jeff Squyres (jsquyres_at_[hidden])
Date: 2010-05-24 09:09:10


On May 23, 2010, at 11:57 AM, Dawid Laszuk wrote:

> It's a bit awkward for me to ask, because I'm not only newbie in
> parallel programming but also in Linux system, but i've but searching
> for long enough to loose any hopes.

No problem; we'll try to help.

> My problem is, when I try to run compiled code with "mpirun" I get output:
> mpirun: symbol lookup error: mpirun: undefined symbol: orte_xml_fp
>
> I can compile code with "mpicc" (i write in C) and it runs, but only
> on one CPU ( I have Athlon X2 64bit, dual core ). There is no
> difference when I write "mpirun", "mpiexec" or "orterun" (but that's
> normal, isn't it?). It doesn't matter what I'm trying to run; I get
> that output just by typing it into console.

FWIW: all three of those are exactly equivalent in Open MPI (mpirun, mpiexec, orterun).

So just to be clear -- if you mpirun a simple MPI test executable (e.g., the test applications in the Open MPI examples/ directory), you get that error message? E.g.:

cd examples
make
mpirun -np 2 examples/hello_c
...you see the missing symbol error here...

What happens if you just run hello_c without mpirun?

./hello_c

What's the output from "ldd hello_c"? (this tells us which libraries it's linking to at run-time -- from your configure output, it should list /usr/local/lib/libmpi.so in there somewhere)

> As I said, I know basics with linux and even adding some libs into sys
> path is something which I still don't know ( and don't how much time
> to read about).
>
> I've attached things which maybe helpful ( output from "./configure",
> "make all", "make install" ).
> I'm using Linux Mint 8 ( Kernel Linux 2.6.31-20-generic). Have two CPU
> cores AMD Athlon Dual-Core QL-60.

The most common case for this kind of error is mixing-n-matching multiple versions of Open MPI on the same machine. Does your Linux distro come with Open MPI installed already, for example?

You might want to configure Open MPI with --enable-mpirun-prefix-by-default -- this does some magic, particularly when running across multiple machines, to try to ensure that the "right" Open MPI installation is picked.

-- 
Jeff Squyres
jsquyres_at_[hidden]
For corporate legal information go to:
http://www.cisco.com/web/about/doing_business/legal/cri/