我正在尝试在我的计算机上安装 QuantumEspresso (QE),我需要它来完成我的论文。教授让我安装它以使用 OpenMPI 进行并行计算,并使用 Intel ifort 编译器进行编译。我遇到了一些麻烦,但 OpenMPI 库似乎已安装;现在我在制作 QE 时遇到错误。脚本:
export I_MPI_F90=ifort
./configure CC=icc FC=ifort CXX=icpc F90=ifort MPIF90=mpif90 FFLAGS="-fc=ifort" LIBDIRS="/usr/local/lib/openmpi/ /usr/local/lib/"
make all
错误如下:
mpif90 -static-intel -o pw.x \
pwscf.o libpw.a ../../Modules/libqemod.a ../../FFTXlib/libqefft.a ../../flib/ptools.a ../../flib/flib.a ../../clib/clib.a ../../iotk/src/libiotk.a -lmkl_scalapack_lp64 -lmkl_blacs_openmpi_lp64 -lfftw3 -lmkl_intel_lp64 -lmkl_sequential -lmkl_core
/opt/intel/compilers_and_libraries_2016.2.181/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_comm_null'
/opt/intel/compilers_and_libraries_2016.2.181/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Comm_f2c'
/opt/intel/compilers_and_libraries_2016.2.181/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_double'
/opt/intel/compilers_and_libraries_2016.2.181/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_dblcplex'
/opt/intel/compilers_and_libraries_2016.2.181/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_packed'
/opt/intel/compilers_and_libraries_2016.2.181/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_op_max'
/opt/intel/compilers_and_libraries_2016.2.181/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_op_maxloc'
/opt/intel/compilers_and_libraries_2016.2.181/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_op_min'
/opt/intel/compilers_and_libraries_2016.2.181/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_byte'
/opt/intel/compilers_and_libraries_2016.2.181/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_comm_world'
/opt/intel/compilers_and_libraries_2016.2.181/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_float'
/opt/intel/compilers_and_libraries_2016.2.181/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_request_null'
/opt/intel/compilers_and_libraries_2016.2.181/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_cplex'
/opt/intel/compilers_and_libraries_2016.2.181/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_unsigned_short'
/opt/intel/compilers_and_libraries_2016.2.181/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Comm_c2f'
/opt/intel/compilers_and_libraries_2016.2.181/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_double_int'
/opt/intel/compilers_and_libraries_2016.2.181/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_int'
/opt/intel/compilers_and_libraries_2016.2.181/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_long_long_int'
/opt/intel/compilers_and_libraries_2016.2.181/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_integer'
/opt/intel/compilers_and_libraries_2016.2.181/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_dblprec'
/opt/intel/compilers_and_libraries_2016.2.181/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Type_f2c'
/opt/intel/compilers_and_libraries_2016.2.181/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Op_f2c'
/opt/intel/compilers_and_libraries_2016.2.181/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_op_sum'
/opt/intel/compilers_and_libraries_2016.2.181/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Op_c2f'
/opt/intel/compilers_and_libraries_2016.2.181/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_real'
/opt/intel/compilers_and_libraries_2016.2.181/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Type_c2f'
Makefile:258: recipe for target 'pw.x' failed
make[2]: *** [pw.x] Error 1
make[2]: Leaving directory '/home/gabriele/espresso-5.3.0/PW/src'
Makefile:9: recipe for target 'pw' failed
make[1]: *** [pw] Error 1
make[1]: Leaving directory '/home/gabriele/espresso-5.3.0/PW'
Makefile:66: recipe for target 'pw' failed
make: *** [pw] Error 1
我认为这是一个联动问题,但我不知道从哪里开始。