[gpaw-users] libmpifort.so: undefined reference compiler issue
Jussi Enkovaara
jussi.enkovaara at csc.fi
Fri Feb 10 07:34:26 CET 2017
On 2017-02-09 23:44, Groves, Michael wrote:
> Hi Jussi,
>
> I really appreciate you getting back to me. I didn’t realise that I didn’t have to include the openMPI libraries explicitly (that they were included already in the Intel Parallel Studio wrapper mpiicc). I removed all references to openMPI and gpaw-python was successfully compiled. However, now when I go to run the tests, I get this error:
>
> [mgroves at kepler tools]$ gpaw
> Traceback (most recent call last):
> File "/home/mgroves/DFT/gpaw-1.1.0/tools/gpaw", line 2, in <module>
> from gpaw.cli.main import main
> File "/home/mgroves/DFT/gpaw-1.1.0/gpaw/__init__.py", line 232, in <module>
> from gpaw.aseinterface import GPAW
> File "/home/mgroves/DFT/gpaw-1.1.0/gpaw/aseinterface.py", line 8, in <module>
> from gpaw.external import PointChargePotential
> File "/home/mgroves/DFT/gpaw-1.1.0/gpaw/external.py", line 6, in <module>
> import _gpaw
> ImportError: /share/apps/intel/composer_xe_2015.0.090/mkl/lib/intel64/libmkl_blacs_intelmpi_lp64.so: undefined symbol: MPI_Finalize
>
>
> Would you have any ideas as to how I can get it to define MPI_Finalize?
Hi,
does it work if you try to start with mpirun, e.g.
mpirun -n 4 gpaw-python `which gpaw` test
Best regards,
Jussi
> Thanks!
>
> Michael
>
>
>
> Michael Groves, PhD
> Assistant Professor
> Department of Chemistry and Biochemistry
> California State University, Fullerton
> mgroves at fullerton.edu
> (657)278-7018
>
> On 2/8/17, 11:33 PM, "Jussi Enkovaara" <jussi.enkovaara at csc.fi> wrote:
>
> Hi Michael,
> it seems that you are mixing Open MPI and Intel MPI (i.e. using Intel
> MPI's wrapper mpiicc but having Open MPI directories in your library
> paths).
>
> You could try use only Intel MPI by removing all openmpi related stuff
> from "library_dirs" and LD_LIBRARY_PATH (replace also
> mkl_blacs_openmpi_lp64 with mkl_blacs_intelmpi_lp64 in
> "libraries"). Other option could be to use Open MPI wrapper with
> something like:
>
> compiler = 'icc'
> mpicompiler = 'OMPI_CC=icc mpicc'
> mpilinker = 'OMPI_CC=icc mpicc'
>
> (You might need to add Open MPI's bin directory into your PATH in this
> case).
>
> Best regards,
> Jussi
>
>
> On 2017-02-08 18:06, Groves, Michael via gpaw-users wrote:
> > Hello gpaw-users,
> >
> > I’m working to install GPAW onto my home cluster and when compiling gpaw-python I’ve run into this issue:
> >
> >
> > mpiicc -o build/bin.linux-x86_64-2.7//gpaw-python build/temp.linux-x86_64-2.7/c/_gpaw.o build/temp.linux-x86_64-2.7/c/bc.o build/temp.linux-x86_64-2.7/c/blacs.o build/temp.linux-x86_64-2.7/c/blas.o build/temp.linux-x86_64-2.7/c/bmgs/bmgs.o build/temp.linux-x86_64-2.7/c/cerf.o build/temp.linux-x86_64-2.7/c/fftw.o build/temp.linux-x86_64-2.7/c/hdf5.o build/temp.linux-x86_64-2.7/c/lapack.o build/temp.linux-x86_64-2.7/c/lcao.o build/temp.linux-x86_64-2.7/c/lfc.o build/temp.linux-x86_64-2.7/c/lfc2.o build/temp.linux-x86_64-2.7/c/localized_functions.o build/temp.linux-x86_64-2.7/c/mlsqr.o build/temp.linux-x86_64-2.7/c/mpi.o build/temp.linux-x86_64-2.7/c/operators.o build/temp.linux-x86_64-2.7/c/plane_wave.o build/temp.linux-x86_64-2.7/c/plt.o build/temp.linux-x86_64-2.7/c/point_charges.o build/temp.linux-x86_64-2.7/c/spline.o build/temp.linux-x86_64-2.7/c/symmetry.o build/temp.linux-x86_64-2.7/c/transformers.o build/temp.linux-x86_64-2.7/c/utilities.o build/temp.linux-x86_64-2.7/c/wigner_seitz.o build/temp.linux-x86_64-2.7/c/woperators.o build/temp.linux-x86_64-2.7/c/xc/ensemble_gga.o build/temp.linux-x86_64-2.7/c/xc/libvdwxc.o build/temp.linux-x86_64-2.7/c/xc/libxc.o build/temp.linux-x86_64-2.7/c/xc/m06l.o build/temp.linux-x86_64-2.7/c/xc/pbe.o build/temp.linux-x86_64-2.7/c/xc/pw91.o build/temp.linux-x86_64-2.7/c/xc/revtpss.o build/temp.linux-x86_64-2.7/c/xc/revtpss_c_pbe.o build/temp.linux-x86_64-2.7/c/xc/rpbe.o build/temp.linux-x86_64-2.7/c/xc/tpss.o build/temp.linux-x86_64-2.7/c/xc/vdw.o build/temp.linux-x86_64-2.7/c/xc/xc.o build/temp.linux-x86_64-2.7/c/xc/xc_mgga.o -L/share/apps/openmpi/1.10.5/lib -L/share/apps/intel/composer_xe_2015.0.090/mkl/lib/intel64 -L/home/mgroves/DFT/libxc-3.0.0/install/lib -L/home/mgroves/DFT/python/2.7/anaconda2/lib/python2.7/config -lmkl_intel_lp64 -lmkl_sequential -lmkl_core -lmkl_lapack95_lp64 -lmkl_scalapack_lp64 -lmkl_blacs_openmpi_lp64 -lmkl_blas95_lp64 -lpthread -lmkl_rt -lm -lxc -lpython2.7 -lpthread -ldl -lutil -lm -L/home/mgroves/DFT/python/2.7/anaconda2/lib -Wl,-rp
ath=/home/mgroves/DFT/python/2.7/anaconda2/lib,--no-as-needed -Xlinker -export-dynamic
> > /home/mgroves/DFT/python/2.7/anaconda2/lib/python2.7/config/libpython2.7.a(posixmodule.o): In function `posix_tmpnam':
> > /home/ilan/minonda/conda-bld/work/Python-2.7.12/./Modules/posixmodule.c:7631: warning: the use of `tmpnam_r' is dangerous, better use `mkstemp'
> > /home/mgroves/DFT/python/2.7/anaconda2/lib/python2.7/config/libpython2.7.a(posixmodule.o): In function `posix_tempnam':
> > /home/ilan/minonda/conda-bld/work/Python-2.7.12/./Modules/posixmodule.c:7578: warning: the use of `tempnam' is dangerous, better use `mkstemp'
> > build/temp.linux-x86_64-2.7/c/_gpaw.o: In function `main':
> > c/_gpaw.c:(.text+0x3d): undefined reference to `__kmpc_begin'
> > c/_gpaw.c:(.text+0x97): undefined reference to `__kmpc_end'
> > /share/apps/intel//impi/5.0.1.035/intel64/lib/libmpifort.so: undefined reference to `PMPIX_Comm_group_failed'
> > /share/apps/intel//impi/5.0.1.035/intel64/lib/libmpifort.so: undefined reference to `MPID_Datatype_builtin'
> > /share/apps/intel//impi/5.0.1.035/intel64/lib/libmpifort.so: undefined reference to `MPID_Type_contiguous'
> > /share/apps/intel//impi/5.0.1.035/intel64/lib/libmpifort.so: undefined reference to `MPIR_Type_free_impl'
> > /share/apps/intel//impi/5.0.1.035/intel64/lib/libmpifort.so: undefined reference to `MPIR_Grequest_set_lang_f77'
> > /share/apps/intel//impi/5.0.1.035/intel64/lib/libmpifort.so: undefined reference to `MPID_Wtime_todouble'
> > /share/apps/intel//impi/5.0.1.035/intel64/lib/libmpifort.so: undefined reference to `MPIR_CommGetAttr_fort'
> > /share/apps/intel//impi/5.0.1.035/intel64/lib/libmpifort.so: undefined reference to `MPIR_WinGetAttr'
> > /share/apps/intel//impi/5.0.1.035/intel64/lib/libmpifort.so: undefined reference to `MPIU_Handle_get_ptr_indirect'
> > /share/apps/intel//impi/5.0.1.035/intel64/lib/libmpifort.so: undefined reference to `MPIR_Keyval_set_proxy'
> > /share/apps/intel//impi/5.0.1.035/intel64/lib/libmpifort.so: undefined reference to `MPID_Type_commit'
> > /share/apps/intel//impi/5.0.1.035/intel64/lib/libmpifort.so: undefined reference to `MPID_Wtick'
> > /share/apps/intel//impi/5.0.1.035/intel64/lib/libmpifort.so: undefined reference to `MPI_WEIGHTS_EMPTY'
> > /share/apps/intel//impi/5.0.1.035/intel64/lib/libmpifort.so: undefined reference to `MPIR_TypeSetAttr'
> > /share/apps/intel//impi/5.0.1.035/intel64/lib/libmpifort.so: undefined reference to `MPIR_Err_create_code'
> > /share/apps/intel//impi/5.0.1.035/intel64/lib/libmpifort.so: undefined reference to `MPIR_Err_preOrPostInit'
> > /share/apps/intel//impi/5.0.1.035/intel64/lib/libmpifort.so: undefined reference to `MPIR_TypeGetAttr'
> > /share/apps/intel//impi/5.0.1.035/intel64/lib/libmpifort.so: undefined reference to `MPID_Datatype_direct'
> > /share/apps/intel//impi/5.0.1.035/intel64/lib/libmpifort.so: undefined reference to `MPIR_WinSetAttr'
> > /share/apps/intel//impi/5.0.1.035/intel64/lib/libmpifort.so: undefined reference to `MPID_b_use_gettimeofday'
> > /share/apps/intel//impi/5.0.1.035/intel64/lib/libmpifort.so: undefined reference to `MPIR_CommSetAttr'
> > /share/apps/intel//impi/5.0.1.035/intel64/lib/libmpifort.so: undefined reference to `MPID_Datatype_mem'
> > /share/apps/intel//impi/5.0.1.035/intel64/lib/libmpifort.so: undefined reference to `MPIR_Process'
> > /share/apps/intel//impi/5.0.1.035/intel64/lib/libmpifort.so: undefined reference to `MPI_UNWEIGHTED'
> > /share/apps/intel//impi/5.0.1.035/intel64/lib/libmpifort.so: undefined reference to `PMPIX_Comm_reenable_anysource'
> > /share/apps/intel//impi/5.0.1.035/intel64/lib/libmpifort.so: undefined reference to `MPID_Datatype_set_contents'
> > /share/apps/intel//impi/5.0.1.035/intel64/lib/libmpifort.so: undefined reference to `MPIR_Add_finalize'
> > /share/apps/intel//impi/5.0.1.035/intel64/lib/libmpifort.so: undefined reference to `PMPIX_Comm_remote_group_failed'
> > /share/apps/intel//impi/5.0.1.035/intel64/lib/libmpifort.so: undefined reference to `MPIR_Err_return_comm'
> > running build_scripts
> > error: can't copy 'build/bin.linux-x86_64-2.7/gpaw-python': doesn't exist or not a regular file
> >
> >
> > I’m compiling this with openmpi and intel compilers and I’m at a bit of a loss as to how to get this to work. Here is my customize.py file:
> >
> > compiler = 'icc'
> > mpicompiler = 'mpiicc'
> > mpilinker = 'mpiicc'
> >
> >
> > scalapack = True
> >
> > library_dirs += ['/share/apps/openmpi/1.10.5/lib','/share/apps/intel/composer_xe_2015.0.090/mkl/lib/intel64']
> > libraries = ['mkl_intel_lp64' ,'mkl_sequential' ,'mkl_core',
> > 'mkl_lapack95_lp64',
> > 'mkl_scalapack_lp64', 'mkl_blacs_openmpi_lp64',
> > 'mkl_blas95_lp64',
> > 'pthread',
> > 'mkl_rt','m'
> > ]
> >
> > libraries += ['xc']
> > # change this to your installation directory
> > LIBXCDIR='/home/mgroves/DFT/libxc-3.0.0/install/'
> > library_dirs += [LIBXCDIR + 'lib']
> > include_dirs += [LIBXCDIR + 'include']
> >
> > extra_compile_args = ['-O3','-fPIC','-std=c99']
> >
> > extra_compile_args += ['-qopenmp']
> >
> > define_macros += [('GPAW_NO_UNDERSCORE_CBLACS', '1')]
> > define_macros += [('GPAW_NO_UNDERSCORE_CSCALAPACK', '1')]
> > define_macros += [('PARALLEL', '1')]
> > define_macros += [("GPAW_ASYNC",1)]
> > define_macros += [("GPAW_MPI2",1)]
> >
> >
> > Here is my PATH variable
> >
> > [mgroves at kepler gpaw-1.1.0]$ echo $PATH
> > /share/apps/intel//impi/5.0.1.035/intel64/bin:/share/apps/intel//impi/5.0.1.035/intel64/bin:/share/apps/intel/composer_xe_2015.0.090/bin/intel64:/share/apps/intel/composer_xe_2015.0.090/mpirt/bin/intel64:/share/apps/intel/composer_xe_2015.0.090/debugger/gdb/intel64_mic/bin:/share/apps/intel/bin:/share/apps/intel/advisor_xe_2015.1.0.367266/bin64:/share/apps/intel/vtune_amplifier_xe_2015.1.0.367959/bin64:/share/apps/intel/inspector_xe_2015.1.0.366509/bin64:/share/apps/intel//impi/5.0.1.035/intel64/bin:/share/apps/intel//itac/9.0.1.033/intel64/bin:/share/apps/intel/composer_xe_2015.0.090/bin/intel64:/share/apps/intel/composer_xe_2015.0.090/mpirt/bin/intel64:/share/apps/intel/composer_xe_2015.0.090/debugger/gdb/intel64_mic/bin:/home/mgroves/DFT/ase/tools:/home/mgroves/DFT/python/2.7/anaconda2/bin:/usr/lib64/qt-3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/opt/ganglia/bin:/opt/ganglia/sbin:/opt/ibutils/bin:/usr/java/latest/bin:/opt/maven/bin:/opt/maui/bin:/opt/torque/bin:/opt/torque/sbin:/opt/pdsh/bin:/opt/rocks/bin:/opt/rocks/sbin:/home/mgroves/bin
> >
> >
> >
> > And here is my LD_LIBRARY_PATH
> >
> > [mgroves at kepler gpaw-1.1.0]$ echo $LD_LIBRARY_PATH
> > /share/apps/openmpi/1.10.5/lib:/home/mgroves/DFT/libxc-3.0.0/install/lib:/share/apps/intel//impi/5.0.1.035/intel64/lib:/share/apps/intel//impi/5.0.1.035/intel64/lib:/share/apps/intel/composer_xe_2015.0.090/compiler/lib/intel64:/share/apps/intel/composer_xe_2015.0.090/mpirt/lib/intel64:/share/apps/intel/composer_xe_2015.0.090/ipp/../compiler/lib/intel64:/share/apps/intel/composer_xe_2015.0.090/ipp/lib/intel64:/share/apps/intel/composer_xe_2015.0.090/compiler/lib/intel64:/share/apps/intel/composer_xe_2015.0.090/mkl/lib/intel64:/share/apps/intel/composer_xe_2015.0.090/tbb/lib/intel64/gcc4.4:/share/apps/intel//impi/5.0.1.035/intel64/lib:/share/apps/intel//itac/9.0.1.033/mic/slib:/share/apps/intel//itac/9.0.1.033/intel64/slib:/share/apps/intel/composer_xe_2015.0.090/compiler/lib/intel64:/share/apps/intel/composer_xe_2015.0.090/mpirt/lib/intel64:/share/apps/intel/composer_xe_2015.0.090/ipp/../compiler/lib/intel64:/share/apps/intel/composer_xe_2015.0.090/ipp/lib/intel64:/share/apps/intel/composer_xe_2015.0.090/compiler/lib/intel64:/share/apps/intel/composer_xe_2015.0.090/mkl/lib/intel64:/share/apps/intel/composer_xe_2015.0.090/tbb/lib/intel64/gcc4.4::/opt/python/lib
> >
> >
> >
> > Does anyone know as to what I’m missing so that gpaw-python finds these undefined references?
> >
> > Thanks!
> >
> > Michael
> >
> >
> > Michael Groves, PhD
> > Assistant Professor
> > Department of Chemistry and Biochemistry
> > California State University, Fullerton
> > mgroves at fullerton.edu<mailto:mgroves at fullerton.edu>
> > (657)278-7018
> >
> >
> >
> > _______________________________________________
> > gpaw-users mailing list
> > gpaw-users at listserv.fysik.dtu.dk
> > https://listserv.fysik.dtu.dk/mailman/listinfo/gpaw-users
> >
>
>
>
More information about the gpaw-users
mailing list