Skip to Content.
Sympa Menu

forum - Re: [abinit-forum] undefined reference to `mpi_allreduce_ and several mpi references

forum@abinit.org

Subject: The ABINIT Users Mailing List ( CLOSED )

List archive

Re: [abinit-forum] undefined reference to `mpi_allreduce_ and several mpi references


Chronological Thread 
  • From: Alain Jacques <ajs.jacques@gmail.com>
  • To: forum@abinit.org
  • Subject: Re: [abinit-forum] undefined reference to `mpi_allreduce_ and several mpi references
  • Date: Sat, 25 Apr 2009 13:40:35 +0200
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:subject:references :in-reply-to:content-type:content-transfer-encoding; b=GK80rt8LGT5JkvN993BFgFVENAxMK9SX5MMrM+J5b4fd6MyfCLaY4yCQapK+8sctH1 tpisor5p/6OxXGReD+XSIBLR7w2EYhvewU8RGWZTc3w068TG7UQBYcawG7AWNjvqVyJl cY2uQ8U6LjBfUcAryD1pP2n08i6n0FXj70whI=

Hello Ana,

Abinit build doesn't find a suitable mpi lib.
Oscar is supposed to come with several mpi implementations. Look at
Oscar module switcher to choose openmpi. I'm not saying that lam won't
work - I simply didn't test it for ages.
I don't know where you found the FFLAGS_PAR ... probably not in Abinit
docs :-)
Make a clean build directory - mkdir tmp-build from Abinit root source
tree; cd to tmp-build. Check that "which mpif90" reports the intended
parallel fortran90 compiler and that it is able to produce working
executables (use mpif90 -showme and compile a small f90 test).Try to
configure Abinit with a plain ...
../configure --enable-mpi FC=ifort. Look for errors and warnings in
config.log.
If you have a 64bit OS and suitable 64bit mpi libs, I advise to
--enable-64bit-flags (check that mpi and ifort are both for 64bit
environment - it is probably the default on your system). You may have
to add --with-mpi-prefix=/xxx --with-mpi-fc-ldflags=-L/xxx/lib
LDFLAGS=-L/xxx/lib and set LD_LIBRARY_PATH in order to help the build
system to find your specific mpi implementation (mpif90 should reside in
/xxx/bin/mpif90). If it ends by producing a src/main/abinip, cd tests
and make tests_acc; check the reports files. Then I suggest to tune the
optimization by reconfiguring with adapted --with-mpi-fcflags and
FCFLAGS. Last but not least, I have had mixed accuracy results with
early Intel fortran 11.0 (this compiler is probably still buggy).


Kind regards,

Alain



cpadilla@uach.mx wrote:
> Arch. Intel Xeon
> Red Hat 5 Linux 2.6.18-92.el5
> Abinit 5.7.3
> Oscar 5.1
> LAM 7.1.4
>
> Hi everybody, this is my first compilation with fortran. I began with this
> command
>
> ./configure --enable-mpi ="yes" FFLAGS_PAR=-I/opt/lam-7.1.4/include
> --with-mpi-prefix=/opt/lam-7.1.4
> FC=/opt/intel/Compiler/11.0/081/bin/intel64/ifort
>
> I'm using LAM instead openmpi or mpich because Oscar installed the package
> and
> I though that if I want to use abinit with Oscar I need to link both
> products
> in that way.
> I have had several errors, most of them lack of paths when it's supossed
> that
> they should be there or errors with modules that are new and the best way to
> advance was to compile without that modules, but now I have this error and I
> don't understand it.
>
> *************************++
> Making all in main
> make[3]: se ingresa al directorio `/opt/tmp/abinit-5.7.3/src/main'
> /opt/intel/Compiler/11.0/081/bin/intel64/ifort -O2 -g
> -I/opt/lam-7.1.4/include
> -o abinis abinis-abinit.o ../../src/21drive/lib21drive.a
> ../../src/21rdm/lib21rdm.a ../../src/18seqpar/lib18seqpars.a
> ../../src/17suscep/lib17suscep.a ../../src/16response/lib16response.a
> ../../src/16geomoptim/lib16geomoptim.a ../../src/15gw/lib15gw.a
> ../../src/15rsprc/lib15rsprc.a ../../src/15common/lib15common.a
> ../../src/15recursion/lib15recursion.a ../../src/15psp/lib15psp.a
> ../../src/15paw/lib15paw.a ../../src/15wfs/lib15wfs.a
> ../../src/15nonlocal/lib15nonlocal.a ../../src/14occeig/lib14occeig.a
> ../../src/14iowfdenpot/lib14iowfdenpot.a ../../src/14wvl_wfs/lib14wvl_wfs.a
> ../../src/14poisson/lib14poisson.a ../../src/lib14cg/liblib14cg.a
> ../../src/13ionetcdf/lib13ionetcdf.a ../../src/13iovars/lib13iovars.a
> ../../src/13io_mpi/lib13io_mpis.a
> ../../src/13papi_counters/lib13papi_counters.a
> ../../src/13recipspace/lib13recipspace.a ../../src/13xc/lib13xc.a
> ../../src/13xml/lib13xml.a ../../src/12nlstrain/lib12nlstrain.a
> ../../src/12ffts/lib12ffts.a ../../src/12geometry/lib12geometry.a
> ../../src/12parser/lib12parser.a ../../src/12spacepar/lib12spacepar.a
> ../../src/11contract/lib11contract.a ../../src/11util/lib11util.a
> ../../src/lib03numeric/liblib03numeric.a
> ../../src/lib02fftnew/liblib02fftnews.a ../../src/02toolbox/lib02toolbox.a
> ../../src/01manage_mpi/lib01manage_mpis.a
> ../../src/lib01hidempi/liblib01hidempis.a ../../src/00basis/lib00basis.a
> ../../src/interfaces/libinterfaces.a ../../src/defs/libdefs.a
> -L/opt/tmp/abinit-5.7.3/plugins/wannier90 -lwannier
> -L/opt/tmp/abinit-5.7.3/prereqs/linalg -llapack -lblas
> -L/opt/tmp/abinit-5.7.3/plugins/etsf_xc -lxc -lstring_f
> -L/opt/tmp/abinit-5.7.3/plugins/etsf_io -letsf_io -letsf_io_utils
> -letsf_io_low_level -L/opt/tmp/abinit-5.7.3/plugins/netcdf -lnetcdf
> abinip-abinit.o: In function `abinit':
> /opt/tmp/abinit-5.7.3/src/main/abinit.F90:199: undefined reference to
> `mpi_init_'
> /opt/tmp/abinit-5.7.3/src/main/abinit.F90:202: undefined reference to
> `mpi_comm_rank_'
> /opt/tmp/abinit-5.7.3/src/main/abinit.F90:203: undefined reference to
> `mpi_comm_size_'
> /opt/tmp/abinit-5.7.3/src/main/abinit.F90:659: undefined reference to
> `mpi_allreduce_'
>
> and so long.... the same error with different funcions and different
> reference
> all beginning with mpi
>
> First I look them in mpi.h so I include again the path of mpi.h file.
>
> But then i read the following post in this mailing list
>
> # From: Damien Caliste <damien.caliste@cea.fr>
> # To: forum@abinit.org
> # Subject: Re: [abinit-forum] compilation of parallel abinit 5.4.4
> # Date: Wed, 30 Jan 2008 16:59:02 +0100
>
> But I don't understand the solution.
> It said that you should verify with nm command, but I don't understand what
> to
> search or verify
>
> nm /opt/lam-7.1.4/include/libmpi.a |less
>
> Then Damien suggested use this option
> --with-mpi-fcflags="-assumenounderscore"
> but later that it was not the solution.
>
> Could you help me to understand this error and what about solution because I
> don't see if it work or not. maybe i'm wrong using lam (that's the reason of
> all my errors) But I would like to know how I link then with oscar.
>
> Thanks in advance for your help
>
> Ana Cecilia Padilla
>




Archive powered by MHonArc 2.6.15.

Top of Page