Compiling with MVAPICH2 leads to undefined references


Click here for full thread
Forum Vet
MPICH was compiled with the Infiniband libraries. Hence, these need to be linked in. An easy way to find which libraries need to be include is by doing a mpif90 -show for example.

Bert


Quote:Deburgess Apr 8th 8:59 pm
My environment variables:

USE_MPI=y
USE_MPIF=y
USE_MPIF4=y

MPI_LOC=/usr/local
MPI_LIB=/usr/local/lib
MPI_INCLUDE=/usr/local/include

LIBMPI=-lmpich -lopa -lmpl -lrt -lpthread

Compilation leads to undefined references:



/usr/local/lib/libmpich.a(rdma_iba_init.o): In function `MPIDI_CH3I_CM_Finalize':
rdma_iba_init.c:(.text+0x185): undefined reference to `ibv_dereg_mr'
rdma_iba_init.c:(.text+0x1a0): undefined reference to `ibv_dereg_mr'
rdma_iba_init.c:(.text+0x1eb): undefined reference to `ibv_destroy_qp'
rdma_iba_init.c:(.text+0x281): undefined reference to `ibv_destroy_cq'
rdma_iba_init.c:(.text+0x2ca): undefined reference to `ibv_dealloc_pd'
rdma_iba_init.c:(.text+0x2d7): undefined reference to `ibv_close_device'
rdma_iba_init.c:(.text+0x32c): undefined reference to `ibv_destroy_srq'



Thanks for your help.