The conclusion we came to on that issue was that this was an issue with Intel ifort. Was anyone able to raise this with Intel ifort tech support?
-- Jeff Squyres jsquy...@cisco.com ________________________________________ From: users <users-boun...@lists.open-mpi.org> on behalf of Matt Thompson via users <users@lists.open-mpi.org> Sent: Thursday, December 30, 2021 9:56 AM To: Open MPI Users Cc: Matt Thompson; Christophe Peyret Subject: Re: [OMPI users] Mac OS + openmpi-4.1.2 + intel oneapi 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<mailto: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