Ayuda OnLine de GULiC

Anon9181

Ayuda
  • Temática: Puedes preguntarnos sobre Software Libre, Linux o GULiC. Otros temas pueden ser respondidos (o no!)
  • Acceso: Para mantener tu anonimato, se te ha asignado un nick al azar (Anon9181). Si deseas identificarte, puedes solicitar tu inscripción como socio ó iniciando sesión, si ya lo eres. En cualquier caso, si usas jabber, puedes informarte de cómo entrar a esta sala con tu cliente habitual, o bien entrando vía jwchat.
  • Uso:Para ver el chat más grande, usa ésta página. Si vas a pegar textos grandes, usa nuestro pastebin. Para avisar de errores o problemas, usa nuestro trac.
  • Horarios: Nuestro huso horario es GMT. No te extrañe si a las 5 de la mañana no te responde nadie.

Problema en la instalación de Abinit && NetCDF

  • Tengo que instalar un programa, el abinit (http://www.abinit.org/). Es Software Libre.
  • Bueno, pues hice una primera instalación en su versión simple y paralelo usando mpi. Tras bastantes problemas conseguí que funcionara.
  • El programa lo tienes que instalar y hay un fichero el makefile_macros donde pones todos los parámetros para la compilación.
  • El programa genera varios ejecutables, los más importantes son: abinit y cut3d.
  • Ya me las creía tan felices cuando resulta que una de las opciones del cut3d es la pasar unos ficheros a netCDF ( http://www.unidata.ucar.edu/downloads/netcdf/) (también software libre). Bueno, pues a pesar de que está incluido en Debian, para poder integrarlo en el abinit tienes que compilarlo con el programa.
  • A continuación tienes un ls del directorio del abinit, para que te hagas una idea de lo que tiene:

darkside:/usr/local/abinit-4.6.5# ls
abinis           Instalacion       log.netcdf           Psps_for_tests  Src_2geometry    Src_3xml         Src_defs      Test_v4
aim              Lib_blas          Machine_dept_files   robodoc.rc      Src_2nonlocal    Src_4iowfdenpot  Src_main      tmp_makefile
anaddb           Lib_fftnew        makearch             RunTests        Src_2parser      Src_4wfs         t3xo_DS1_DEN  Tutorial
band2eps         Lib_lapack        make.bat             RunTests.pl     Src_2psp         Src_5common      Test_cpu      Utilities
changes.4.6.x    Lib_light         makedefns            scripts         Src_2spacepar    Src_6response    Test_fast     ,version
conducti         Lib_macroav       Makefile             Src_0basis      Src_3gw          Src_7ddb         Test_in       vms
cut3d            Lib_nanoquantaxc  makefile_macros      Src_1contract   Src_3ionetcdf    Src_7lwf         Test_paral
cut3d.log        Lib_netcdf        makefile_macros.old  Src_1managempi  Src_3iovars      Src_7suscep      Test_physics
descrip.mms      Lib_numeric       makemake             Src_1util       Src_3paw         Src_8seqpar      Test_v1
include.version  Lib_numericf90    makencdf             Src_2bader      Src_3recipspace  Src_9cut3d       Test_v2
Infos            Lib_XMLf90        mkPrl_in             Src_2ffts       Src_3xc          Src_9drive       Test_v3
  • Bueno, pues tras muchas horas de trabajo en las que no compilaba y demás, conseguí compilar el NetCDF. Me dí cuenta de que para compilarlo con gfortran (el compilar de fortran que estoy usando) sólo sirve la versión 3.6.0 del programa, por lo menos es la única que me compiló. Otra cosa, en lugar de compilarlo con make netcdf del abinit, lo compilé según las instrucciones del netcdf, dejando los ejecutables en Lib_netcdf/…
  • Seguimos.
  • A continuación hice un make seq, para compilar el abinit.
  • Primer problema: el ejecutable del abinis. No compilaba, pero me di cuenta de que era un error cuando hacía gfortran, y es que faltaban las librerias del netcdf, así que las puse y funcionó.
  • Segundo error, y ya no sé como seguir, el cut3d.
  • Adjunto un log de lo que hace cuando intenta compilarlo.
  • El error se origina en los comandos:

/lib/cpp  -DP6 -DFLOAT="double precision" -DPOINTER_SIZE=4 -P -traditional  -DCONTRACT -DNETCDF  wffile.F90 > wffile_cpp.f90

/usr/bin/gfortran -g -O3  -fforce-addr -fno-second-underscore  -I../Lib_nanoquantaxc  -c wffile_cpp.f90

/usr/bin/gfortran -g -O3  -fforce-addr -fno-second-underscore -I../Lib_netcdf -I../Lib_nanoquantaxc -I../Lib_netcdf -c wffile_cpp.f90

pero tampoco funciona.

  • El problema está en el fichero macrofile_macros, pero no sé que más puedo poner..
  • ¿Alguna idea?
Imagen de lcabrera

El log de la compilación puede ser importante

Edita el mensaje y mira a ver si puedes adjuntar ese log. Sin él, es casi imposible ayudarte. ¡¡Ánimo!!


Me gusta el Software Libre y su filosofía: por eso uso Debian

cut3d.log

Como sigo sin poder adjuntar archivos…ahi va:


if [ ! -d ./Src_main ] ; then mkdir -p ./Src_main ; fi
cd ./Src_main ; \
         /usr/local/abinit-4.6.5/makedefns ; \
         if [ ! -f include.version ] ; then \
          cp /usr/local/abinit-4.6.5/include.version . ; \
         fi ; \
         rm -f cut3d_cpp.f90 ; \
         /lib/cpp -C -DP6 -P -traditional  -DCONTRACT -DNETCDF -L/usr/local/abinit-4.6.5/Lib_netcdf/lib/ -I/usr/local/abinit-4.6.5/Lib_netcdf/include/ /usr/local/abinit-4.6.5/Src_main/cut3d.F90 | sed '/^#pragma/d' > cut3d_cpp.f90 ; \
         /usr/bin/gfortran  -g -O3  -fforce-addr -fno-second-underscore -c cut3d_cpp.f90  ; \
         mv cut3d_cpp.o cut3d.o ; \
         if [ no = yes ] ; then \
          rm -f cut3d_cpp.f90 ; \
         fi
/usr/local/abinit-4.6.5/Src_main
 makedefns : copied defs files to dir
 In file cut3d_cpp.f90:752

              status = nf90_put_att(ncid,dataVarID , "positions", "grid1,produc
                                                                 1
Error: Unterminated character constant beginning at (1)
mv: no se puede efectuar `stat' sobre cut3d_cpp.o: No existe el fichero o el directorio
if [ ! -d ./Src_9cut3d ] ; then \
         mkdir -p ./Src_9cut3d ; \
        fi
cd . ; \
         if [ ! -f makefile_macros ] ; then \
          cp /usr/local/abinit-4.6.5/makefile_macros . ; \
         fi
cd ./Src_9cut3d ; \
         if [ ! -f object_list ] ; then \
          cp /usr/local/abinit-4.6.5/Src_9cut3d/object_list . ; \
         fi ; \
         /usr/local/abinit-4.6.5/makearch Src_9cut3d ar_9cut3d defs

 makearch : included makefile_macros in Src_9cut3d/tmp_makefile
/usr/local/abinit-4.6.5/Src_9cut3d
 makedefns : copied defs files to dir
 makearch : reached end, the Src_9cut3d/tmp_makefile file has been generated

cd ./Src_9cut3d; \
          make -f tmp_makefile ar_9cut3d.a VPATH=/usr/local/abinit-4.6.5/Src_9cut3d
make[2]: se ingresa al directorio `/usr/local/abinit-4.6.5/Src_9cut3d'
rm -f hirsh_cpp.f90
/lib/cpp  -DP6 -DFLOAT="double precision" -DPOINTER_SIZE=4 -P -traditional  -DCONTRACT -DNETCDF -L/usr/local/abinit-4.6.5/Lib_netcdf/lib/ -I/usr/local/abinit-4.6.5/Lib_netcdf/include/ hirsh.F90 > hirsh_cpp.f90
/usr/bin/gfortran -g -O3  -fforce-addr -fno-second-underscore -I../Lib_nanoquantaxc -c hirsh_cpp.f90
mv hirsh_cpp.o hirsh.o
if [ yes = yes ] ; then rm -f hirsh_cpp.f90 ; fi
rm -f interpol3d_cpp.f90
/lib/cpp  -DP6 -DFLOAT="double precision" -DPOINTER_SIZE=4 -P -traditional  -DCONTRACT -DNETCDF -L/usr/local/abinit-4.6.5/Lib_netcdf/lib/ -I/usr/local/abinit-4.6.5/Lib_netcdf/include/ interpol3d.F90 > interpol3d_cpp.f90
/usr/bin/gfortran -g -O3  -fforce-addr -fno-second-underscore -I../Lib_nanoquantaxc -c interpol3d_cpp.f90
mv interpol3d_cpp.o interpol3d.o
if [ yes = yes ] ; then rm -f interpol3d_cpp.f90 ; fi
rm -f linedirectint_cpp.f90
/lib/cpp  -DP6 -DFLOAT="double precision" -DPOINTER_SIZE=4 -P -traditional  -DCONTRACT -DNETCDF -L/usr/local/abinit-4.6.5/Lib_netcdf/lib/ -I/usr/local/abinit-4.6.5/Lib_netcdf/include/ linedirectint.F90 > linedirectint_cpp.f90
/usr/bin/gfortran -g -O3  -fforce-addr -fno-second-underscore -I../Lib_nanoquantaxc -c linedirectint_cpp.f90
mv linedirectint_cpp.o linedirectint.o
if [ yes = yes ] ; then rm -f linedirectint_cpp.f90 ; fi
rm -f lineint_cpp.f90
/lib/cpp  -DP6 -DFLOAT="double precision" -DPOINTER_SIZE=4 -P -traditional  -DCONTRACT -DNETCDF -L/usr/local/abinit-4.6.5/Lib_netcdf/lib/ -I/usr/local/abinit-4.6.5/Lib_netcdf/include/ lineint.F90 > lineint_cpp.f90
/usr/bin/gfortran -g -O3  -fforce-addr -fno-second-underscore -I../Lib_nanoquantaxc -c lineint_cpp.f90
mv lineint_cpp.o lineint.o
if [ yes = yes ] ; then rm -f lineint_cpp.f90 ; fi
rm -f normalize_cpp.f90
/lib/cpp  -DP6 -DFLOAT="double precision" -DPOINTER_SIZE=4 -P -traditional  -DCONTRACT -DNETCDF -L/usr/local/abinit-4.6.5/Lib_netcdf/lib/ -I/usr/local/abinit-4.6.5/Lib_netcdf/include/ normalize.F90 > normalize_cpp.f90
/usr/bin/gfortran -g -O3  -fforce-addr -fno-second-underscore -I../Lib_nanoquantaxc -c normalize_cpp.f90
mv normalize_cpp.o normalize.o
if [ yes = yes ] ; then rm -f normalize_cpp.f90 ; fi
rm -f planeint_cpp.f90
/lib/cpp  -DP6 -DFLOAT="double precision" -DPOINTER_SIZE=4 -P -traditional  -DCONTRACT -DNETCDF -L/usr/local/abinit-4.6.5/Lib_netcdf/lib/ -I/usr/local/abinit-4.6.5/Lib_netcdf/include/ planeint.F90 > planeint_cpp.f90
/usr/bin/gfortran -g -O3  -fforce-addr -fno-second-underscore -I../Lib_nanoquantaxc -c planeint_cpp.f90
mv planeint_cpp.o planeint.o
if [ yes = yes ] ; then rm -f planeint_cpp.f90 ; fi
rm -f pointint_cpp.f90
/lib/cpp  -DP6 -DFLOAT="double precision" -DPOINTER_SIZE=4 -P -traditional  -DCONTRACT -DNETCDF -L/usr/local/abinit-4.6.5/Lib_netcdf/lib/ -I/usr/local/abinit-4.6.5/Lib_netcdf/include/ pointint.F90 > pointint_cpp.f90
/usr/bin/gfortran -g -O3  -fforce-addr -fno-second-underscore -I../Lib_nanoquantaxc -c pointint_cpp.f90
mv pointint_cpp.o pointint.o
if [ yes = yes ] ; then rm -f pointint_cpp.f90 ; fi
rm -f recip_cpp.f90
/lib/cpp  -DP6 -DFLOAT="double precision" -DPOINTER_SIZE=4 -P -traditional  -DCONTRACT -DNETCDF -L/usr/local/abinit-4.6.5/Lib_netcdf/lib/ -I/usr/local/abinit-4.6.5/Lib_netcdf/include/ recip.F90 > recip_cpp.f90
/usr/bin/gfortran -g -O3  -fforce-addr -fno-second-underscore -I../Lib_nanoquantaxc -c recip_cpp.f90
mv recip_cpp.o recip.o
if [ yes = yes ] ; then rm -f recip_cpp.f90 ; fi
rm -f reduce_cpp.f90
/lib/cpp  -DP6 -DFLOAT="double precision" -DPOINTER_SIZE=4 -P -traditional  -DCONTRACT -DNETCDF -L/usr/local/abinit-4.6.5/Lib_netcdf/lib/ -I/usr/local/abinit-4.6.5/Lib_netcdf/include/ reduce.F90 > reduce_cpp.f90
/usr/bin/gfortran -g -O3  -fforce-addr -fno-second-underscore -I../Lib_nanoquantaxc -c reduce_cpp.f90
mv reduce_cpp.o reduce.o
if [ yes = yes ] ; then rm -f reduce_cpp.f90 ; fi
rm -f rrho_cpp.f90
/lib/cpp  -DP6 -DFLOAT="double precision" -DPOINTER_SIZE=4 -P -traditional  -DCONTRACT -DNETCDF -L/usr/local/abinit-4.6.5/Lib_netcdf/lib/ -I/usr/local/abinit-4.6.5/Lib_netcdf/include/ rrho.F90 > rrho_cpp.f90
/usr/bin/gfortran -g -O3  -fforce-addr -fno-second-underscore -I../Lib_nanoquantaxc -c rrho_cpp.f90
mv rrho_cpp.o rrho.o
if [ yes = yes ] ; then rm -f rrho_cpp.f90 ; fi
rm -f rtau_cpp.f90
/lib/cpp  -DP6 -DFLOAT="double precision" -DPOINTER_SIZE=4 -P -traditional  -DCONTRACT -DNETCDF -L/usr/local/abinit-4.6.5/Lib_netcdf/lib/ -I/usr/local/abinit-4.6.5/Lib_netcdf/include/ rtau.F90 > rtau_cpp.f90
/usr/bin/gfortran -g -O3  -fforce-addr -fno-second-underscore -I../Lib_nanoquantaxc -c rtau_cpp.f90
mv rtau_cpp.o rtau.o
if [ yes = yes ] ; then rm -f rtau_cpp.f90 ; fi
rm -f vdot_cpp.f90
/lib/cpp  -DP6 -DFLOAT="double precision" -DPOINTER_SIZE=4 -P -traditional  -DCONTRACT -DNETCDF -L/usr/local/abinit-4.6.5/Lib_netcdf/lib/ -I/usr/local/abinit-4.6.5/Lib_netcdf/include/ vdot.F90 > vdot_cpp.f90
/usr/bin/gfortran -g -O3  -fforce-addr -fno-second-underscore -I../Lib_nanoquantaxc -c vdot_cpp.f90
mv vdot_cpp.o vdot.o
if [ yes = yes ] ; then rm -f vdot_cpp.f90 ; fi
rm -f volumeint_cpp.f90
/lib/cpp  -DP6 -DFLOAT="double precision" -DPOINTER_SIZE=4 -P -traditional  -DCONTRACT -DNETCDF -L/usr/local/abinit-4.6.5/Lib_netcdf/lib/ -I/usr/local/abinit-4.6.5/Lib_netcdf/include/ volumeint.F90 > volumeint_cpp.f90
/usr/bin/gfortran -g -O3  -fforce-addr -fno-second-underscore -I../Lib_nanoquantaxc -c volumeint_cpp.f90
mv volumeint_cpp.o volumeint.o
if [ yes = yes ] ; then rm -f volumeint_cpp.f90 ; fi
rm -f wffile_cpp.f90
/lib/cpp  -DP6 -DFLOAT="double precision" -DPOINTER_SIZE=4 -P -traditional  -DCONTRACT -DNETCDF -L/usr/local/abinit-4.6.5/Lib_netcdf/lib/ -I/usr/local/abinit-4.6.5/Lib_netcdf/include/ wffile.F90 > wffile_cpp.f90
/usr/bin/gfortran -g -O3  -fforce-addr -fno-second-underscore -I../Lib_nanoquantaxc -c wffile_cpp.f90
 In file wffile_cpp.f90:67

  use netcdf
           1
 In file wffile_cpp.f90:62

 implicit none
             2
Error: USE statement at (1) cannot follow IMPLICIT NONE statement at (2)
 In file wffile_cpp.f90:1211

gwave
    1
Error: Syntax error in argument list at (1)
 In file wffile_cpp.f90:1214

lwave
    1
Error: Syntax error in argument list at (1)
 In file wffile_cpp.f90:1234

           status = nf90_put_att(ncid,realwavefunVarID , "positions", "grid1,pr
                                                                     1
Error: Unterminated character constant beginning at (1)
 In file wffile_cpp.f90:1240

           status = nf90_put_att(ncid,imagwavefunVarID , "positions", "grid1,pr
                                                                     1
Error: Unterminated character constant beginning at (1)
 In file wffile_cpp.f90:1133

           status = nf90_create(filename(1), nf90_clobber, ncid)
                                                        1
Error: Symbol 'nf90_clobber' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1274

              status = nf90_put_att(ncid, nf90_global, "title", filetitle)
                                                    1
Error: Symbol 'nf90_global' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1187

           status = nf90_def_var(ncid, "kpoint",nf90_float, latDimID, kpointVar
                                                         1
Error: Symbol 'nf90_float' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1134

           if (status /= nf90_noerr) call handle_ncerr(status, "Creating file")
                                  1
Error: Symbol 'nf90_noerr' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1133

           status = nf90_create(filename(1), nf90_clobber, ncid)
                   1
Error: Function 'nf90_create' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1167

           status = nf90_def_dim(ncid,"gridsize1",nr1, gridsize1DimID)
                   1
Error: Function 'nf90_def_dim' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1170

           status = nf90_def_dim(ncid,"gridsize2",nr2, gridsize2DimID)
                   1
Error: Function 'nf90_def_dim' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1173

           status = nf90_def_dim(ncid,"gridsize3",nr3, gridsize3DimID)
                   1
Error: Function 'nf90_def_dim' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1176

           status = nf90_def_dim(ncid, "lat",3, latDimID)
                   1
Error: Function 'nf90_def_dim' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1179

           status = nf90_def_dim(ncid, "pos",2, posDimID)
                   1
Error: Function 'nf90_def_dim' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1182

           status = nf90_def_dim(ncid, "nbatom",natom, nbatomDimID)
                   1
Error: Function 'nf90_def_dim' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1187

           status = nf90_def_var(ncid, "kpoint",nf90_float, latDimID, kpointVar
                   1
Error: Function 'nf90_def_var' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1190

           status = nf90_def_var(ncid, "latticevec",nf90_float, (/ latDimID, la
                   1
Error: Function 'nf90_def_var' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1193

           status = nf90_def_var(ncid, "origin",nf90_float, (/ latDimID, latDim
                   1
Error: Function 'nf90_def_var' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1196

           status = nf90_def_var(ncid, "atomposi",nf90_float, (/ latDimID, nbat
                   1
Error: Function 'nf90_def_var' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1199

           status = nf90_def_var(ncid, "atomicnum",nf90_float, nbatomDimID, ato
                   1
Error: Function 'nf90_def_var' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1202

           status = nf90_def_var(ncid, "grid1",nf90_float, (/latDimID,posDimID/
                   1
Error: Function 'nf90_def_var' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1205

           status = nf90_def_var(ncid, "grid2",nf90_float, (/latDimID,posDimID/
                   1
Error: Function 'nf90_def_var' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1208

           status = nf90_def_var(ncid, "grid3",nf90_float, (/latDimID,posDimID/
                   1
Error: Function 'nf90_def_var' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1219

           status = nf90_put_att(ncid,latticevecVarID , "field", "latticevec,ve
                   1
Error: Function 'nf90_put_att' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1222

           status = nf90_put_att(ncid,originVarID , "field", "origin,vector")
                   1
Error: Function 'nf90_put_att' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1225

           status = nf90_put_att(ncid,atomposiVarID , "field","atomposi,vector")
                   1
Error: Function 'nf90_put_att' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1228

           status = nf90_put_att(ncid,latticevecVarID , "positions","origin" )
                   1
Error: Function 'nf90_put_att' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1231

           status = nf90_put_att(ncid,atomicnumVarID , "positions", "atomposi")
                   1
Error: Function 'nf90_put_att' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1237

           status = nf90_put_att(ncid,realwavefunVarID , "connections", (/nr3,n
                   1
Error: Function 'nf90_put_att' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1243

           status = nf90_put_att(ncid,imagwavefunVarID , "connections", (/nr3,n
                   1
Error: Function 'nf90_put_att' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1246

           status = nf90_put_att(ncid,kpointVarID , "long_name", "K-point Value
                   1
Error: Function 'nf90_put_att' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1249

           status = nf90_put_att(ncid,latticevecVarID , "long_name", "Lattice V
                   1
Error: Function 'nf90_put_att' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1252

           status = nf90_put_att(ncid,atomposiVarID , "long_name", "Atomic Posi
                   1
Error: Function 'nf90_put_att' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1255

           status = nf90_put_att(ncid, atomicnumVarID, "long_name", "Atomic Num
                   1
Error: Function 'nf90_put_att' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1258

           status = nf90_put_att(ncid, imagwavefunVarID, "long_name", " Imagina
                   1
Error: Function 'nf90_put_att' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1261

           status = nf90_put_att(ncid, realwavefunVarID, "long_name", " Real Pa
                   1
Error: Function 'nf90_put_att' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1264

           status = nf90_put_att(ncid, originVarID, "long_name", "Origin of the
                   1
Error: Function 'nf90_put_att' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1267

           status = nf90_put_att(ncid,latticevecVarID, "units", "Angstroms")
                   1
Error: Function 'nf90_put_att' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1270

           status = nf90_put_att(ncid,atomposiVarID, "units", "Angstroms")
                   1
Error: Function 'nf90_put_att' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1274

              status = nf90_put_att(ncid, nf90_global, "title", filetitle)
                      1
Error: Function 'nf90_put_att' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1288

           status = nf90_put_att(ncid, nf90_global,"date", stridate)
                   1
Error: Function 'nf90_put_att' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1293

           status = nf90_enddef(ncid)
                   1
Error: Function 'nf90_enddef' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1298

           status = nf90_put_var(ncid,kpointVarID,kptvar)
                   1
Error: Function 'nf90_put_var' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1301

           status = nf90_put_var(ncid,latticevecVarID,Bohr_Ang*rprimd)
                   1
Error: Function 'nf90_put_var' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1304

           status = nf90_put_var(ncid,originVarID,originatt)
                   1
Error: Function 'nf90_put_var' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1307

           status = nf90_put_var(ncid,atomposiVarID, Bohr_Ang*tau)
                   1
Error: Function 'nf90_put_var' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1310

           status = nf90_put_var(ncid,atomicnumVarID,znucl(typat))
                   1
Error: Function 'nf90_put_var' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1313

           status = nf90_put_var(ncid,grid1VarID,gridwavefun1)
                   1
Error: Function 'nf90_put_var' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1316

           status = nf90_put_var(ncid,grid2VarID,gridwavefun2)
                   1
Error: Function 'nf90_put_var' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1319

           status = nf90_put_var(ncid,grid3VarID,gridwavefun3)
                   1
Error: Function 'nf90_put_var' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1324

           status = nf90_put_var(ncid,imagwavefunVarID, partwf)
                   1
Error: Function 'nf90_put_var' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1329

           status = nf90_put_var(ncid,realwavefunVarID, partwf)
                   1
Error: Function 'nf90_put_var' at (1) has no IMPLICIT type
 In file wffile_cpp.f90:1332

           status = nf90_close(ncid)
                   1
Error: Function 'nf90_close' at (1) has no IMPLICIT type
make[2]: *** [wffile.o] Error 1
make[2]: se sale del directorio `/usr/local/abinit-4.6.5/Src_9cut3d'
make[1]: *** [Src_9cut3d/ar_9cut3d.a] Error 2
make[1]: se sale del directorio `/usr/local/abinit-4.6.5'
make: *** [allseq] Error 2

darkside:/usr/local/abinit-4.6.5# /lib/cpp  -DP6 -DFLOAT="double precision" -DPOINTER_SIZE=4 -P -DNETCDF  wffile.F90 > wffile_cpp.f90
cpp: wffile.F90: No existe el fichero o el directorio
cpp: warning: '-x c' after last input file has no effect
cpp: no input files

makefile_macros

También les dejo el makefile_macros, que contiene toda la info sobre la compilación:


# This file contains the definitions needed for every possible script
# to be used with the ABINIT makefiles.  It is very much machine-dependent.
# It is read by makemake and makearch.

# This file from MMikami.
# see http://www.intel.com/software/products/compilers/flin/noncom.htm

# In this file, the blas library is linked in the same way as the other
# libraries (lapack, ffts, numrecip).

# Explanations about this file can be found in the  makefile_macros_help file,
# in the Infos subdirectory

####################################################################
# For the sequential version 

# Machine type
MACHINE=P6
# Fortran optimized compilation
FC=/usr/bin/gfortran
#FFLAGS= -g -O3 -fforce-mem -fforce-addr -fno-second-underscore
FFLAGS= -g -O3  -fforce-addr -fno-second-underscore 
FFLAGS_LIBS= $(FFLAGS) $(NETCDF) Lib_netcdf/lib/libnetcdf.a
F90FLAGS= $(FFLAGS) $(NETCDF) Lib_netcdf/lib/libnetcdf.a

#LIBS=$(LAPACK) $(BLAS) -L/opt/intel_fc_80/lib/ -lsvml -lcxa -Vaxlib -static

#NETCDF=Lib_netcdf

#LIBS= -L/usr/local/abinit-4.6.5/Lib_netcdf/lib/libnetcdf.a  -I/usr/local/abinit-4.6.5/Lib_netcdf/include/
LIBS=$(LAPACK) $(BLAS) Lib_netcdf/lib/libnetcdf.a 

# C preprocessor, used to preprocess the fortran source.
#CPP=/usr/bin/gfortran -E
CPP=/lib/cpp
#CPP_FLAGS=-P 
#CPP_FLAGS=-P -traditional  -DNETCDF -L/usr/lib/ -I/usr/include/
CPP_FLAGS=-P -traditional  -DCONTRACT -DNETCDF 
# The cpp directive CHGSTDIO changes the standard I/O definition
# Uncomment the next line for this to happen.
#CPP_FLAGS=-P -DCHGSTDIO 

# C optimized compilation.
CC=gcc
CFLAGS= -0 -DNETCDF -L/usr/local/abinit-4.6.5/Lib_netcdf/lib/ -I/usr/local/abinit-4.6.5/Lib_netcdf/include/ -Df2cFortran
#CFLAGS= -0 -DNETCDF

# Location of perl . Used to generate the script fldiff, in ~ABINIT/Utilities .
PERL=/usr/bin/perl

# List of machine-dependent routines
MACHINE_DEP_C_SEQ_SUBS_LIST=etime.o

#Para la integracion de netcdf
#LIBS=-L/usr/lib/ -I/usr/include/
NC_CC=gcc
NC_FC=/usr/bin/gfortran
NC_F90=/usr/bin/gfortran
NC_CPPFlAGS=-Df2cFortran
NC_CXX=c++
NC_CXXFLAGS=-g -02
NC_F90FLAGS= -ff2c
NC_FFLAGS=-ff2c

####################################################################
# For the parallel version : MPICH / MYRINET

# Compiler flags and definitions
FFLAGS_PAR= $(FFLAGS) -I /usr/local/mpi-intel/include

# List of machine-dependent routines
MACHINE_DEP_C_PAR_SUBS_LIST=etime.par

# Location of the MPI library
MPI_A=/usr/local/mpi-intel/lib/libmpich.a /usr/local/mpi-intel/lib/libfmpich.a -Vaxlib
# Include blas, lapack, and any other libraries here
 LIBS_PAR=$(LIBS) $(MPI_A)

# This is a last line in makefile_macros ----------
######################################################################

#Opciones para el  NetCDF
#NC_FC=/usr/bin/gfortran
#NC_F90=
#NC_CPPFLAGS=-P -traditional
#NC_CC=gcc
#NC_CFLAGS=-0 -DfcFortran
#NC_F90FLAGS=
#NC_FFLAGS= -g -O3 -fforce-mem -fforce-addr -fno-second-underscore

Imagen de aplatanado

El gfortran

¿En el fichero donde se documenta la instalación no indica si se necesita alguna versión de gfortran en particular?

En todo caso estoy seguro que para algunos error las opción -ffixed-line-length-n te puede ayudar:

-ffixed-line-length-n
Set column after which characters are ignored in typical fixed-form lines in the source file, and through which spaces are assumed (as if padded to that length) after the ends of short fixed-form lines.
Popular values for n include 72 (the standard and the default), 80 (card image), and 132 (corresponds to “extended-source” options in some popular compilers). n may be `none’, meaning that the entire line is meaningful and that continued character constants never have implicit spaces appended to them to fill out the line. -ffixed-line-length-0 means the same thing as -ffixed-line-length-none.

Prueba y a ver que pasa.


May the Free Software Force be with you…

gfortran y esta mierda no funciona

Bueno, siento la tardanza, pero he estado sin internet.
Tras mucho cacharrear y darnos de cabezazos, sobre todo amd77, hemos llegado a la conclusión de que ESTA MIERDA NO FUNCIONA.
Por un lado, sip, resulta que no todas las versiones del programa son compatibles con gfortran, pero, cuando por fin nos bajamos una versión compatible, resulta que es demasiado vieja, y tampoco funciona.
Si consigo compilar el netcdf por un lado, resulta que lo hace relocatable, (o algo asi, no tengo mucha idea de esto, amd77 es el guru), y el resto del programa es no-relocatable.
Intentamos cambiar las opciones de compilación, no hay manera.

Bajamos el g95, y otra versión. Resultado: tampoco funciona.

Nos bajamos las versiones beta de las últimas versiones de abinit, pero tampoco funciona.
Al final lo di por imposible, ya lo volveré a intentar cuando disponga de algo más de tiempo….

Saludos

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.