Oh yeah. I know that error. This is due to a long standing issue with Intel
on macOS and Open MPI:

https://github.com/open-mpi/ompi/issues/7615

You need to configure Open MPI with "lt_cv_ld_force_load=no" at the
beginning. (You can see an example at the top of my modulefile here:
https://github.com/mathomp4/parcelmodulefiles/blob/main/Compiler/intel-clang-2022.0.0/openmpi/4.1.2.lua
)

Matt

On Thu, Dec 30, 2021 at 5:47 AM Christophe Peyret via users <
users@lists.open-mpi.org> wrote:

> Hello,
>
> I have built openmpi-4.1.2 with latest intel oneapi compilers, including
> fortran
>
> but I am facing problems at compilation:
>
>
> *mpif90 toto.f90*
>
> Undefined symbols for architecture x86_64:
>
>   "_ompi_buffer_detach_f08", referenced from:
>
>       import-atom in libmpi_usempif08.dylib
>
> ld: symbol(s) not found for architecture x86_64
>
> library libmpi_usempif08.dylib is present in $MPI_DIR/lib
>
>
> *mpif90 -showme
>
>
>                                                    *
>
> ifort -I/Users/chris/Applications/Intel/openmpi-4.1.2/include
> -Wl,-flat_namespace -Wl,-commons,use_dylibs
> -I/Users/chris/Applications/Intel/openmpi-4.1.2/lib
> -L/Users/chris/Applications/Intel/openmpi-4.1.2/lib -lmpi_usempif08
> -lmpi_usempi_ignore_tkr -lmpi_mpifh -lmpi
>
>
> if I remove -lmpi_usempif08 from that command line it works !
>
> *ifort -I/Users/chris/Applications/Intel/openmpi-4.1.2/include
> -Wl,-flat_namespace -Wl,-commons,use_dylibs
> -I/Users/chris/Applications/Intel/openmpi-4.1.2/lib
> -L/Users/chris/Applications/Intel/openmpi-4.1.2/lib
> -lmpi_usempi_ignore_tkr -lmpi_mpifh -lmpi toto.f90*
>
>
> And program runs:
>
> *mpirun -n 4 a.out*
>
> rank=2/4
>
> rank=3/4
>
> rank=0/4
>
> rank=1/4
>
>
> Annexe the Program
>
> program toto
>
>   use mpi
>
>   implicit none
>
>   integer :: i
>
>   integer :: comm,rank,size,ierror
>
>   call mpi_init(ierror)
>
>   comm=MPI_COMM_WORLD
>
>   call mpi_comm_rank(comm, rank, ierror)
>
>   call mpi_comm_size(comm, size, ierror)
>
>   print '("rank=",i0,"/",i0)',rank,size
>
>   call mpi_finalize(ierror)
>
> end program toto
>
>
> --
>
> *Christophe Peyret*
>
> *ONERA/DAAA/NFLU*
>
> 29 ave de la Division Leclerc
> F92322 Châtillon Cedex
>
>

-- 
Matt Thompson
   “The fact is, this is about us identifying what we do best and
   finding more ways of doing less of it better” -- Director of Better Anna
Rampton

Reply via email to