mpi4py runtime linking error

53 views
Skip to first unread message

Matthias Jeschke

unread,
Dec 10, 2009, 4:52:25 AM12/10/09
to mpi4py
Hi,

I've just installed mpi4py via easy_install on a Linux 64 Bit machine
running Ubuntu 9.10 and OpenMPI 1.3.4. Compiling went fine but
whenever I want to run the example hello world app, I'am receiving the
following error:

ImportError: /usr/local/lib/python2.6/dist-packages/mpi4py-1.1.0-py2.6-
linux-x86_64.egg/mpi4py/MPI.so: undefined symbol: lt_dlexit

libltdl is installed. I have no idea why it cannot find the symbol.

Regards

Matthias

Lisandro Dalcin

unread,
Dec 10, 2009, 8:44:26 AM12/10/09
to mpi...@googlegroups.com
On Thu, Dec 10, 2009 at 6:52 AM, Matthias Jeschke
<matt...@googlemail.com> wrote:
>
> ImportError: /usr/local/lib/python2.6/dist-packages/mpi4py-1.1.0-py2.6-
> linux-x86_64.egg/mpi4py/MPI.so: undefined symbol: lt_dlexit
>

Yep, expected when using Open MPI 1.3.x

>
> libltdl is installed.
>

It does not matter. Open MPI has its own, bundled libltdl.

>
>I have no idea why it cannot find the symbol.
>

but very recently they decided to hide the libltdl symbols from the
MPI library. And this broke mpi4py, that was using the libltdl symbols
to workaround other well known and nasty issues related to the way
Python dynamic loads extension modules.

There are to ways to get mpi4py running.

1) Checkout the SVN repo (it is in a near-to-release state). But you
will need to install Cython-0.12
<http://www.cython.org/release/Cython-0.12.tar.gz> to generate the C
sources.

2) Download the mpi4py tarball by hand, unpack, follow further
instructions, and finally 'python setup.py install'


I think (1) will be far easier and you get more robust and tested
code. But if for any reason you need (2), let me know, it is just a
matter of replacing two files you can get from the repo at Google Code
using wget.


--
Lisandro Dalcín
---------------
Centro Internacional de Métodos Computacionales en Ingeniería (CIMEC)
Instituto de Desarrollo Tecnológico para la Industria Química (INTEC)
Consejo Nacional de Investigaciones Científicas y Técnicas (CONICET)
PTLC - Güemes 3450, (3000) Santa Fe, Argentina
Tel/Fax: +54-(0)342-451.1594

Matthias Jeschke

unread,
Dec 10, 2009, 8:53:58 AM12/10/09
to mpi4py
Hi

thanks for the help, I switched to OpenMPI 1.4 and checked out the
sources for mpi4py via svn, now it works.

Thank you again!

MJ

On Dec 10, 2:44 pm, Lisandro Dalcin <dalc...@gmail.com> wrote:
> On Thu, Dec 10, 2009 at 6:52 AM, Matthias Jeschke
>
Reply all
Reply to author
Forward
0 new messages