[Pkg-openmpi-maintainers] mpi_comm_rank_ missing in libopenmpi1?

Daniel Leidert daniel.leidert.spam at gmx.net
Wed Mar 12 19:32:23 UTC 2008


Am Mittwoch, den 12.03.2008, 13:57 -0500 schrieb Dirk Eddelbuettel:
> On 12 March 2008 at 19:26, Daniel Leidert wrote:
[..]
 
> | Now the problem: The arpack packages are linked to libopenmpi1 for some
> | architectures. However, dpkg-shlibdeps complains about the missing
> | symbols mpi_comm_rank_ and mpi_allreduce_ [1]. liblam4 and libmpich1.0gf
> | both ship these symbols, but libopenmpi1 does not (also checked with
> | nm). So I wonder if there is a bug or an issue in libopenmpi1.
> 
> We do have these, albeit in upper-case notation:
> 
> edd at ron:~$ grep -i "mpi_comm_rank\|mpi_allreduce"
> /usr/lib/openmpi/include/mpi.h
> OMPI_DECLSPEC  int MPI_Allreduce(void *sendbuf, void *recvbuf, int count,
> OMPI_DECLSPEC  int MPI_Comm_rank(MPI_Comm comm, int *rank);
> OMPI_DECLSPEC  int PMPI_Allreduce(void *sendbuf, void *recvbuf, int count,
> OMPI_DECLSPEC  int PMPI_Comm_rank(MPI_Comm comm, int *rank);
> 
> Also see manual pages MPI_Comm_rank.1 and MPI_Allrecuce.3 in openmpi-doc.
> 
> | I'm not familiar with MPI, so please excuse, if this is some kind of
> | stupid question.
> 
> Not at all. Does arpack calls these from Fortran, or something like that?

Yes. arpack is written in FORTRAN. It uses

call MPI_COMM_RANK()
call MPI_ALLREDUCE()

> There appear to be a few macros somewhere.  Worst case, could you typedef
> this?

I have a basic understanding of FORTRAN code, but I'm not familiar with
it. I'm working on this problem because of other missing symbols in the
arpack library leading to an FTBFS with apbs, which I co-maintain. The
arpack maintainer and me were discussing, if we should switch to
libmpich1.0-dev for all architectures. ATM arpack is built with
libopenmpi-dev for several architectures. I wanted to get some
information by the openmpi-maintainers about this, before I decide if
the switch is necessary.

I find a reference to mpi_comm_rank
in /usr/lib/openmpi/include/openmpi/ompi/mpi/f77/prototypes_mpi.h. Maybe
our linking needs some tweaking:
http://svn.debian.org/wsvn/pkg-scicomp/arpack/trunk/debian/rules?op=file&rev=0&sc=0

Seems, libmpi_f77.so contains this symbol.

Regards, Daniel




More information about the Pkg-openmpi-maintainers mailing list