On Feb 24, 2009, at 4:43 AM, Olaf Lenz wrote:

We've talked about similar errors before; I thought that the issue was caused by the Python front-end calling dlopen() to manually open the libmpi.so library. Is that the cause in your scenario?

Not really. We have written a shared library _espresso.so, which is a Python module that is loaded by Python, which in turn dynamically loads libmpi.so - but only on the C++ level. Python itself never sees libmpi.so.

If so, note that it needs to load libmpi.so with RTLD_GLOBAL. For example:

That is not really under my control, as the library is opened by Python.

As your later post mentioned, there's another topic going on about exactly this issue right now. I sent a lengthy reply which I think explains the issues:

    http://www.open-mpi.org/community/lists/users/2009/02/8186.php

the problem disappears. Note also, that the same program works when I'm
using OpenMPI 1.2.x (tested 1.2.6 and 1.2.9).

I still wonder, why everything worked fine in 1.2.x, while in OpenMPI 1.3 it doesn't. Has anything changed between these versions that could influence the behaviour?

Yes; we upgraded our version of Libtool (and libltdl) to the 2.x series (specifically: Open MPI 1.2.x uses Libtool 1.5.something whereas Open MPI v1.3.x uses Libtool 2.something). This is an instance of a change in policy in one of these core tools has ripple effects on lots and lots of other software...

--
Jeff Squyres
Cisco Systems

Reply via email to