Open MPI logo

Open MPI User's Mailing List Archives

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

From: Brian Barrett (brbarret_at_[hidden])
Date: 2005-11-07 14:05:02


On Nov 4, 2005, at 11:41 AM, Charles Williams wrote:

> I have been using Open MPI in conjunction with PETSc on OSX 10.4,
> and had been having trouble with undefined symbols when trying
> tests with PETSc:
>
> /usr/bin/ld: Undefined symbols:
> _pmpi_wtick__
> _pmpi_wtime__
>
> After playing around with things for a while, I realized that these
> undefined symbols only appeared in libmpi_f90.a, and were somehow
> being pulled into the PETSc libraries when they were built. The
> problem occurred when trying to build an executable that included
> libraries with these undefined symbols. The simplest solution I
> could think of was to edit include/mpif.h.in. In the last two
> lines of this file I simply changed:
>
> > double precision MPI_WTIME, MPI_WTICK, PMPI_WTIME, PMPI_WTICK
> > external MPI_WTIME, MPI_WTICK, PMPI_WTIME, PMPI_WTICK
>
> to:
>
> < double precision MPI_WTIME, MPI_WTICK
> < external MPI_WTIME, MPI_WTICK
>
> This fixed the problem for me, and I am wondering whether this is a
> reasonable fix. My understanding is that the functions are not
> actually part of open-mpi. Would this approach break anything
> else? If not, it would be nice to include it, since the only other
> option I can think of for fixing things on OSX 10.4 with the
> current build procedures is to strip libraries of undefined symbols
> before they are used.

Sorry about that. Some time ago, we decided to make MPI_WTIME and
MPI_WTICK inline functions in C and not provide a profiling interface
for them. Unfortunately, it appears we didn't properly update the
Fortran or C++ interfaces. I committed a change so PMPI_WTICK /
PMPI_WTIME exist and work properly. That should fix your problem.

The change will be in the next 1.0 release candidate, and the nightly
tarballs that will be available tomorrow morning. Release candidates
and betas will be available at the URL below:

   http://www.open-mpi.org/software/

Hope this helps,

Brian

-- 
   Brian Barrett
   Open MPI developer
   http://www.open-mpi.org/