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