Build Error in abinit 7.6.3 and 7.6.4  [SOLVED]

option, parallelism,...

Moderators: fgoudreault, mcote

Forum rules
Please have a look at ~abinit/doc/config/build-config.ac in the source package for detailed and up-to-date information about the configuration of Abinit 8 builds.
For a video explanation on how to build Abinit 7.x for Linux, please go to: http://www.youtube.com/watch?v=DppLQ-KQA68.
IMPORTANT: when an answer solves your problem, please check the little green V-like button on its upper-right corner to accept it.
Locked
Sunny
Posts: 10
Joined: Thu Jan 31, 2013 4:25 pm

Build Error in abinit 7.6.3 and 7.6.4

Post by Sunny » Mon May 05, 2014 1:10 pm

Hi!

While compiling abinit with gfortran 4.9.0, I noticed, that a bug in the file src/67_common/odamix.F90 blocks further compilation.

The full error message is:

Code: Select all

mpifort -DHAVE_CONFIG_H -I. -I../.. -I../../src/incs -I../../src/incs -I/home/stefan/Build/abinit-7.6.3/fallbacks/exports/include   -ffree-form -J/home/stefan/Build/abinit-7.6.3/src/mods  -O2 -march=native -mtune=native -ffree-line-length-none -g -ffree-line-length-none   -c -o outwf.o outwf.F90
odamix.F90:549.13:

             rhoijtmp(klmn-1:klmn+1,ispden)=pawrhoij(iatom)%rhoijp(jrhoij:jrhoi
             1
Fehler: andere Form für Feld-Zuweisung bei (1) für Dimension 1 (3 und 2)
Makefile:1020: recipe for target 'odamix.o' failed


The complete erroneous line is:

Code: Select all

rhoijtmp(klmn-1:klmn+1,ispden)=pawrhoij(iatom)%rhoijp(jrhoij:jrhoij+1,ispden)

The problem here is, that an array with dimension 2x1 should be stored in an array with dimension 3x1.

Could you tell us, how to fix this line?

PS: I "fixed" this by removing the "+1" from the upper boundary of rhoijtmp, which should resemble the behaviour of older compilers. Nevertheless, I don't know, if this is correct.

User avatar
jbeuken
Posts: 365
Joined: Tue Aug 18, 2009 9:24 pm
Contact:

Re: Build Error in abinit 7.6.3 and 7.6.4  [SOLVED]

Post by jbeuken » Mon May 05, 2014 7:44 pm

Hi,

the gfortran 4.9.0 is now used to test the 7.7.x version and the, we found the problem...

the correct fix is

rhoijtmp(klmn:klmn+1,ispden)=pawrhoij(iatom)%rhoijp(jrhoij:jrhoij+1,ispden)

klmn-1 -> klmn


A+

jmb
------
Jean-Michel Beuken
Computer Scientist

Locked