Page 1 of 1

qexml_v4.0.o] Error 1: catastrophic error!

Posted: Wed May 19, 2010 10:17 am
by feffeficus
Dear all, sorry again, but I can't still manage to compile the p2y interface.
on this Bull cluster 64-bit, tried to compile yambo by linking iotk for espresso_4.0.5 and espresso_4.1.1 as a test.

In both cases, the configure is ok, the iotk_dir is correct, make yambo with netcdf is ok,
make interfaces stops during the p2y compilation alway with the same error that is attached in the files below.
I put both the ouput from compilation with iotk_4.0.5 and iotk_4.1.1

this is my configure:

Code: Select all

./configure --with-fftw=/applications/fftw3-3.2.1/ --enable-largedb FC=mpif90 FCFLAGS=-nofor-main LIBS=-lnetcdff -lnetcdf --enable-msgs-comps --with-iotk=/home/cont003/feffe/CODES/PLATINE/espresso-4.1.1/iotk --with-p2y=4.0
can you guess which is the problem?
thanks again!
ff

Re: qexml_v4.0.o] Error 1: catastrophic error!

Posted: Wed May 19, 2010 9:01 pm
by Conor Hogan
Hi fluffy,
Ok, lets do this step by step. By the way, is the netCDF working now? I mean, will your compiled yambo read a netCDF database? (take the sample one or tutorial from the website). I imagine it does not since you have not set --with-netcdf-* commands in configure, so the preprocessing flags for netCDF will not be switched on (you would see -D_NETCDF_IO during compilation). Try using the usual --with-netcdf-* commands during configure to switch on the 'X' on the netCDF line (it just shows X for large databases)

Anyway this is separate from the PW problem.

Right now, not easy to see what is wrong. The compiler does not find the iotk_module file, first of all:

Code: Select all

mpif90 -c -nofor-main   -I /home/cont003/feffe/CODES/PLATINE/yambo-prova/yambo-3.2.1_rev576/include qexml_v4.0.f90) > /dev/null
qexml_v4.0.f90(28): error #7002: Error in opening the compiled module file.  Check INCLUDE paths.   [IOTK_MODULE]
  USE iotk_module
so lets see if we can understand why not. Report the result of the following:

Code: Select all

cd interfaces/p2y
gcc -E -P -D_MPI -D_P2Y_V40 -D_linux qexml_v4.0.F > qexml_v4.0.f90
ls -l /home/cont003/feffe/CODES/PLATINE/yambo-prova/yambo-3.2.1_rev576/include/
mpif90 -c qexml_v4.0.f90
mpif90 -c -I /home/cont003/feffe/CODES/PLATINE/yambo-prova/yambo-3.2.1_rev576/include qexml_v4.0.f90
mpif90 -c -I /home/cont003/feffe/CODES/PLATINE/espresso-4.1.1/iotk/src qexml_v4.0.f90
cp /home/cont003/feffe/CODES/PLATINE/espresso-4.1.1/iotk/src/iotk_module.mod .
mpif90 -c qexml_v4.0.f90
If none of these work, then it means your iotk_module.mod is not compatible with mpif90, for some reason (was it compiled in serial or parallel?)

Let me know!
Conor

Re: qexml_v4.0.o] Error 1: catastrophic error!

Posted: Thu May 20, 2010 12:13 pm
by feffeficus
NETCDF
Conor Hogan wrote:Hi fluffy,
Ok, lets do this step by step. By the way, is the netCDF working now? I mean, will your compiled yambo read a netCDF database? (take the sample one or tutorial from the website). I imagine it does not since you have not set --with-netcdf-* commands in configure, so the preprocessing flags for netCDF will not be switched on (you would see -D_NETCDF_IO during compilation). Try using the usual --with-netcdf-* commands during configure to switch on the 'X' on the netCDF line (it just shows X for large databases)
yes, you're right. Netcdf don't work. And I tried several times to link them with the proper flag but there is not way, both using precompiled ones and by putting the one compiled by me.


IOTK
[quote"Conor Hogan"]

Code: Select all

cd interfaces/p2y
gcc -E -P -D_MPI -D_P2Y_V40 -D_linux qexml_v4.0.F > qexml_v4.0.f90[/quote]
this doesn't give any error messages

[quote="Conor Hogan"]
ls -l /home/cont003/feffe/CODES/PLATINE/yambo-prova/yambo-3.2.1_rev576/include/
mpif90 -c qexml_v4.0.f90
mpif90 -c -I /home/cont003/feffe/CODES/PLATINE/yambo-prova/yambo-3.2.1_rev576/include qexml_v4.0.f90
mpif90 -c -I /home/cont003/feffe/CODES/PLATINE/espresso-4.1.1/iotk/src qexml_v4.0.f90
cp /home/cont003/feffe/CODES/PLATINE/espresso-4.1.1/iotk/src/iotk_module.mod .
mpif90 -c qexml_v4.0.f90
[/quote]

these others give the same kind of error as before.... >__<;
Conor Hogan wrote: If none of these work, then it means your iotk_module.mod is not compatible with mpif90, for some reason (was it compiled in serial or parallel?)
I compiled pwscf in parallel. with

Code: Select all

ifort  ---> intel/11.1.056
mpif90  --> /opt/mpi/mpibull2-1.3.9-5.s/bin/mpif90  (the mpibull wrapper)
so....i dont know...I'm hang on that now. Two problems is make che one indeed.
I will go on trying to fix netcdf. If you have some ideas in the meanwhile on how to force yambo linking them...(maybe by hand ?)

thanks guys, i will bring some presents in the future..
ff.

Re: qexml_v4.0.o] Error 1: catastrophic error!

Posted: Thu May 20, 2010 4:16 pm
by Conor Hogan
feffeficus wrote: yes, you're right. Netcdf don't work. And I tried several times to link them with the proper flag but there is not way, both using precompiled ones and by putting the one compiled by me.
Well, there's not much more I can suggest without you giving me access to the machine, but you should still be able to break the problem down to a lower level by compiling and linking some file by hand.

Conor Hogan wrote: ls -l /home/cont003/feffe/CODES/PLATINE/yambo-prova/yambo-3.2.1_rev576/include/
mpif90 -c qexml_v4.0.f90
mpif90 -c -I /home/cont003/feffe/CODES/PLATINE/yambo-prova/yambo-3.2.1_rev576/include qexml_v4.0.f90
mpif90 -c -I /home/cont003/feffe/CODES/PLATINE/espresso-4.1.1/iotk/src qexml_v4.0.f90
cp /home/cont003/feffe/CODES/PLATINE/espresso-4.1.1/iotk/src/iotk_module.mod .
mpif90 -c qexml_v4.0.f90[/code]
Well thats good to know: it means the problem is not with Yambo :-D

Simply put, if you compile the iotk module with mpif90, and then try to USE it with mpif90 -c qexml_v4.0.f90, and the .mod file in the same directory, then it has to work. There must be some extra detail you are missing when you compile pw.x. Are you maybe compiling pw.x in 32/64 bit mode? How about compiling both in serial, and remove linking to every other library?