Compilation issue with lecamx

All questions about installation
Forum rules
Please read the forum usage recommendations before posting.
Post Reply
Support TGCC
Posts: 3
Joined: Thu Apr 25, 2013 10:41 am

Compilation issue with lecamx

Post by Support TGCC »

Hi,

I'm a member of the support applicative team of TGCC (http://www-hpc.cea.fr/fr/complexe/tgcc.htm). When we installed saturne/3.0.0 on cluster, some errors occur.

$ ./configure --prefix=[..]/saturne-3.0.0 CC=icc CXX=icpc FC=ifort --with-hdf5=[...]/hdf5-1.8.8 LDFLAGS="$CCC_HDF5_LDFLAGS" --with-blas-type=MKL --with-blas-lib="${MKL_LIB_DIR}" --with-blas-libs="-lmkl_rt -liomp5 -lm" --with-blas-include="${MKL_INC_DIR}" --with-hdf5=/usr/local/hdf5-1.8.8 --with-mpi="${MPI_ROOT}" --with-mpi-exec="${MPI_ROOT}/bin" --with-mpi-include="${MPI_ROOT}/include" --with-mpi-lib="${MPI_ROOT}/lib" --enable-openmp --enable-mpi

$ make -j 16
make[3]: Entering directory `[..]/code_saturne-3.0.0/src/base'
/bin/sh ../../libtool --tag=FC --mode=compile ifort -I../../src -I../../src/atmo -I../../src/cfbl -I../../src/cogz -I../../src/comb -I../../src/cplv -I../../src/ctwr -I../../src/elec -I../../src/lagr -I../../src/pprt -I../../src/rayt -O2 -cpp -fpic -warn -diag-disable 7712 -openmp -c -o lecamo.lo lecamo.f90
libtool: compile: ifort -I../../src -I../../src/atmo -I../../src/cfbl -I../../src/cogz -I../../src/comb -I../../src/cplv -I../../src/ctwr -I../../src/elec -I../../src/lagr -I../../src/pprt -I../../src/rayt -O2 -cpp -fpic -warn -diag-disable 7712 -openmp -c lecamo.f90 -fPIC -o .libs/lecamo.o
lecamo.f90(133): error #6784: The number of actual arguments cannot be greater than the number of dummy arguments. [LECAMX]
call lecamx &

compilation aborted for lecamo.f90 (code 1) make[3]: *** [lecamo.lo] Error 1 make[3]: Leaving directory `[..]/code_saturne-3.0.0/src/base' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `[..]/code_saturne-3.0.0/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `[..]/code_saturne-3.0.0'

make: *** [all] Error 2

There is a difference between the call of lecamx subroutine in lecamo.f90 and his its definition in lecamx.f90. We fixed it by :

$ diff -y lecamo.f90 lecamo.f90.old

call lecamx & call lecamx &
!========== !==========
( ndim , ncelet , ncel , nfac , nfabor , & ( ndim , ncelet , ncel , nfac , nfabor , &
nnod , nvar , nscal , & nnod , nvar , nscal , &
dt , rtp , propce , propfa , propfb , & dt , rtp , propce , propfa , propfb , &
coefa , coefb , frcxt ) | coefa , coefb , frcxt , prhyd )

endif endif

Greetings,

Jérôme Esbrat
Yvan Fournier
Posts: 4208
Joined: Mon Feb 20, 2012 3:25 pm

Re: Compilation issue with lecamx

Post by Yvan Fournier »

Hello,

Thanks for the feedback and the fix (it seems that when building even with icc on some of our clusters, we missed this).

The fix has been commited to both the developpement trunk and the version 3.0 maintenance branch, and will be available in bug-fix version 3.0.1, which we intend to release no later than the end of next week (and maybe earlier).

Thanks again,

Yvan Fournier
Post Reply