[Debichem-devel] [Pkg-scicomp-devel] Open MPI 1.3 related rebuilds
Steve M. Robbins
steve at sumost.ca
Sun Feb 1 23:05:57 UTC 2009
On Sun, Feb 01, 2009 at 10:52:18AM -0600, Dirk Eddelbuettel wrote:
>
> On 1 February 2009 at 00:37, Steve M. Robbins wrote:
> | Hello Dirk,
> |
> | On Mon, Jan 26, 2009 at 09:10:04PM -0600, Dirk Eddelbuettel wrote:
> |
> | > Open MPI 1.3, released a few days ago, recommends a rebuild of its
> | > dependencies.
> | >
> | > Given the fairly small number of affected packages, we are hoping do drive
> | > this rebuild 'informally' rather than with the full force of libopenmpi-1.2
> | > and libopenmpi-1.3 libraries (which would still require rebuilds, but also
> | > delays via NEW etc pp). Details and logs of this initiative are on a new
> | > wiki page at http://wiki.debian.org/OpenMPI13Transition
> |
> | The wiki page states that Open MPI 1.3 is not binary compatible with
> | Open MPI 1.2. Presumably, therefore, the SONAME has changed.
>
> Not quite. It's more complicated because of the fact that at least three
> different implementations (LAM/MPI, MPICH and MPICH2, OpenMPI) provide
> /usr/lib/libmpi.so and there is no soname encoded.
That's not quite the case; the SONAME for the OpenMPI-supplied library
is libmpi.so.0:
$ objdump -p /usr/lib/libmpi.so|grep SON
SONAME libmpi.so.0
If a program linked against libmpi.so.0 fails to run with the new
libmpi.so.0, then either there is a bug in OpenMPI 1.3 or the SONAME
should change. This is not confined to relinking dependent libraries
in Debian packages: you will also break user-built code.
> Also note that it isn't strictly incompatible. Some users of Open MPI that
> were built agains 1.2.* continue to work under 1.3.
Sure, but the test for re-using an existing SONAME is
Is the ABI the same, or not?
i.e. Does *every* program continue to run, or not?
My understanding is that the answer is "no".
> | So I don't understand what this request is about. Can you explain?
>
> I am kindly requesting those who have a reverse dependency on Open MPI (aka
> libopenmpi1) to rebuild their package against the version in unstable.
Perhaps I'm being naive, but that doesn't seem to be sufficient. I
think you'd have to do that recursively (e.g. for packages like MINC,
built against libhdf5-openmpi) and also force all user code to be
rebuilt.
If the ABI change is intentional, I don't understand why you're not
using the usual transition mechanisms for doing this; i.e. either (a)
SONAME bump (requires upstream support), or (b) faking it with a
package rename (if upstream is unwilling). See [1] for an example
of the latter.
Regards,
-Steve
[1] http://lists.debian.org/debian-devel/2007/05/msg01173.html
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
Url : http://lists.alioth.debian.org/pipermail/debichem-devel/attachments/20090201/20d30003/attachment.pgp
More information about the Debichem-devel
mailing list