Error compiling cosmo_131108_5.00_clm6 – in #9: CCLM

in #9: CCLM

<p> An error occurs when I try to compile cosmo_131108_5.00_clm6. Although there are no errors indicated for routine netcdf_io.f90, the size of the object file is only 250 Byte and the netcdf_io.mod is empty, which subsequently leads to errors within the module src_output.f90. I have tried nearly all netCDF Versions available but with no success. Did anyone face similar problems with this version? </p> <p> Best, Johann </p>

  @johannzüger in #677fa59

<p> An error occurs when I try to compile cosmo_131108_5.00_clm6. Although there are no errors indicated for routine netcdf_io.f90, the size of the object file is only 250 Byte and the netcdf_io.mod is empty, which subsequently leads to errors within the module src_output.f90. I have tried nearly all netCDF Versions available but with no success. Did anyone face similar problems with this version? </p> <p> Best, Johann </p>

Error compiling cosmo_131108_5.00_clm6

An error occurs when I try to compile cosmo_131108_5.00_clm6. Although there are no errors indicated for routine netcdf_io.f90, the size of the object file is only 250 Byte and the netcdf_io.mod is empty, which subsequently leads to errors within the module src_output.f90. I have tried nearly all netCDF Versions available but with no success. Did anyone face similar problems with this version?

Best, Johann

View in channel
<p> Hi Johann, </p> <p> which machine are you using? <br/> Could you provide your compile-script? </p> <p> Best </p> <p> Hans-Juergen </p>

  @hans-jürgenpanitz in #bc568b6

<p> Hi Johann, </p> <p> which machine are you using? <br/> Could you provide your compile-script? </p> <p> Best </p> <p> Hans-Juergen </p>

Hi Johann,

which machine are you using?
Could you provide your compile-script?

Best

Hans-Juergen

<p> I use a Tyan machine with Debian 7 (Wheezy), mpich2, gfortran-4.7 and various netCDF-4 versions. </p> <p> Fopts looks like: </p> <p> <span class="caps"> PROGRAM </span> = <span class="caps"> CLM </span> _URB5 </p> <p> <span class="caps"> STDROOT </span> = ${PWD} <br/> SRCDIR = $( <span class="caps"> STDROOT </span> )/src <br/> OBJDIR = $( <span class="caps"> STDROOT </span> )/obj <br/> WORKDIR = $( <span class="caps"> STDROOT </span> )/work </p> <p> <span class="caps"> MPI </span> _INC = /usr/include/mpich2 <br/> GRIB_INC = /home/zueger/CLM/dwd_grib_gf_par <br/> NC_INC = /usr/include </p> <p> <span class="caps"> LPATH </span> = -L/usr/lib <br/> LIBS = -lnetcdff </p> <p> <span class="caps"> GRIB </span> _LIB1 = /home/zueger/CLM/dwd_grib_gf_par/libgrib1.a <br/> GRIB_LIB = -L/usr/lib -lgrib_api_f90 -lgrib_api <br/> NETCDF = /usr/lib <br/> NC_LIB = /usr/lib/libnetcdff.a <br/> NC_MOD = -I/usr/include </p> <p> # <ol> <li> compiler <br/> F90 = /usr/bin/mpif90.mpich2_g -cpp -c <br/> F902 =${F90} </li> <li> linker <br/> <span class="caps"> LDPAR </span> = /usr/bin/mpif90.mpich2_g -static <br/> <span class="caps"> LDSEQ </span> = gfortran </li> </ol> # <ol> <li> compile-flags </li> </ol> # <br/> <span class="caps"> COMFLG </span> = -O3 -I$( <span class="caps"> SRCDIR </span> ) -I$( <span class="caps"> MPI </span> _INC) -I$(NC_INC) -I$( <span class="caps"> GRIB </span> _INC) \ - <span class="caps"> DNETCDF </span> - <span class="caps"> DCLM </span> -DGRIBDWD # <br/> COMFLG2=$( <span class="caps"> COMFLG </span> ) <br/> COMFLG3=$( <span class="caps"> COMFLG </span> ) <br/> COMFLG4=$( <span class="caps"> COMFLG </span> ) # <ol> <li> link-flags </li> </ol> # <br/> LDFLG = -O3 - <span class="caps"> DSGI </span> -I$( <span class="caps"> SRCDIR </span> ) -I$(NC_INC) \ -I${MPI_INC} # <br/> LIB = ${LPATH} ${LIBS} ${GRIB_LIB} ${NC_LIB} </p> <p> This is the version with standard netCDF package, but the problem is the same with every package I used. </p> <p> Best, Johann </p>

  @johannzüger in #895bca0

<p> I use a Tyan machine with Debian 7 (Wheezy), mpich2, gfortran-4.7 and various netCDF-4 versions. </p> <p> Fopts looks like: </p> <p> <span class="caps"> PROGRAM </span> = <span class="caps"> CLM </span> _URB5 </p> <p> <span class="caps"> STDROOT </span> = ${PWD} <br/> SRCDIR = $( <span class="caps"> STDROOT </span> )/src <br/> OBJDIR = $( <span class="caps"> STDROOT </span> )/obj <br/> WORKDIR = $( <span class="caps"> STDROOT </span> )/work </p> <p> <span class="caps"> MPI </span> _INC = /usr/include/mpich2 <br/> GRIB_INC = /home/zueger/CLM/dwd_grib_gf_par <br/> NC_INC = /usr/include </p> <p> <span class="caps"> LPATH </span> = -L/usr/lib <br/> LIBS = -lnetcdff </p> <p> <span class="caps"> GRIB </span> _LIB1 = /home/zueger/CLM/dwd_grib_gf_par/libgrib1.a <br/> GRIB_LIB = -L/usr/lib -lgrib_api_f90 -lgrib_api <br/> NETCDF = /usr/lib <br/> NC_LIB = /usr/lib/libnetcdff.a <br/> NC_MOD = -I/usr/include </p> <p> # <ol> <li> compiler <br/> F90 = /usr/bin/mpif90.mpich2_g -cpp -c <br/> F902 =${F90} </li> <li> linker <br/> <span class="caps"> LDPAR </span> = /usr/bin/mpif90.mpich2_g -static <br/> <span class="caps"> LDSEQ </span> = gfortran </li> </ol> # <ol> <li> compile-flags </li> </ol> # <br/> <span class="caps"> COMFLG </span> = -O3 -I$( <span class="caps"> SRCDIR </span> ) -I$( <span class="caps"> MPI </span> _INC) -I$(NC_INC) -I$( <span class="caps"> GRIB </span> _INC) \ - <span class="caps"> DNETCDF </span> - <span class="caps"> DCLM </span> -DGRIBDWD # <br/> COMFLG2=$( <span class="caps"> COMFLG </span> ) <br/> COMFLG3=$( <span class="caps"> COMFLG </span> ) <br/> COMFLG4=$( <span class="caps"> COMFLG </span> ) # <ol> <li> link-flags </li> </ol> # <br/> LDFLG = -O3 - <span class="caps"> DSGI </span> -I$( <span class="caps"> SRCDIR </span> ) -I$(NC_INC) \ -I${MPI_INC} # <br/> LIB = ${LPATH} ${LIBS} ${GRIB_LIB} ${NC_LIB} </p> <p> This is the version with standard netCDF package, but the problem is the same with every package I used. </p> <p> Best, Johann </p>

I use a Tyan machine with Debian 7 (Wheezy), mpich2, gfortran-4.7 and various netCDF-4 versions.

Fopts looks like:

PROGRAM = CLM _URB5

STDROOT = ${PWD}
SRCDIR = $( STDROOT )/src
OBJDIR = $( STDROOT )/obj
WORKDIR = $( STDROOT )/work

MPI _INC = /usr/include/mpich2
GRIB_INC = /home/zueger/CLM/dwd_grib_gf_par
NC_INC = /usr/include

LPATH = -L/usr/lib
LIBS = -lnetcdff

GRIB _LIB1 = /home/zueger/CLM/dwd_grib_gf_par/libgrib1.a
GRIB_LIB = -L/usr/lib -lgrib_api_f90 -lgrib_api
NETCDF = /usr/lib
NC_LIB = /usr/lib/libnetcdff.a
NC_MOD = -I/usr/include

#

  1. compiler
    F90 = /usr/bin/mpif90.mpich2_g -cpp -c
    F902 =${F90}
  2. linker
    LDPAR = /usr/bin/mpif90.mpich2_g -static
    LDSEQ = gfortran
#
  1. compile-flags
#
COMFLG = -O3 -I$( SRCDIR ) -I$( MPI _INC) -I$(NC_INC) -I$( GRIB _INC) \ - DNETCDF - DCLM -DGRIBDWD #
COMFLG2=$( COMFLG )
COMFLG3=$( COMFLG )
COMFLG4=$( COMFLG ) #
  1. link-flags
#
LDFLG = -O3 - DSGI -I$( SRCDIR ) -I$(NC_INC) \ -I${MPI_INC} #
LIB = ${LPATH} ${LIBS} ${GRIB_LIB} ${NC_LIB}

This is the version with standard netCDF package, but the problem is the same with every package I used.

Best, Johann

<p> Are you sure that libnetcdff.a contains also the C-Part of netCDF? <br/> Have you tried: <br/> <pre> NC_LIB = /usr/lib/libnetcdf.a /usr/lib/libnetcdff.a </pre> </p>

  @burkhardtrockel in #f0e7a51

<p> Are you sure that libnetcdff.a contains also the C-Part of netCDF? <br/> Have you tried: <br/> <pre> NC_LIB = /usr/lib/libnetcdf.a /usr/lib/libnetcdff.a </pre> </p>

Are you sure that libnetcdff.a contains also the C-Part of netCDF?
Have you tried:

NC_LIB = /usr/lib/libnetcdf.a /usr/lib/libnetcdff.a

<p> Exactly, this was also my suggestion. </p> <p> Hans-Juergen </p>

  @hans-jürgenpanitz in #e1d29bd

<p> Exactly, this was also my suggestion. </p> <p> Hans-Juergen </p>

Exactly, this was also my suggestion.

Hans-Juergen

<p> Yes, I have tried both, but the problem is, that I never get to the link part. Compiling stops because the object file netcdf_io.o is obviously corrupt and netcdf_io.mod is empty. When starting compilation of src_output.f90 an error occurs at the statement “ <span class="caps"> USE </span> netcdf_io”: “Symbol send_asyn_io referenced not found in module netcdf_io.” </p> <p> Johann </p>

  @johannzüger in #35f87b4

<p> Yes, I have tried both, but the problem is, that I never get to the link part. Compiling stops because the object file netcdf_io.o is obviously corrupt and netcdf_io.mod is empty. When starting compilation of src_output.f90 an error occurs at the statement “ <span class="caps"> USE </span> netcdf_io”: “Symbol send_asyn_io referenced not found in module netcdf_io.” </p> <p> Johann </p>

Yes, I have tried both, but the problem is, that I never get to the link part. Compiling stops because the object file netcdf_io.o is obviously corrupt and netcdf_io.mod is empty. When starting compilation of src_output.f90 an error occurs at the statement “ USE netcdf_io”: “Symbol send_asyn_io referenced not found in module netcdf_io.”

Johann

<p> At last I found the mistake. For some reason the parameter COMFLG1 was missing in Fopts – at least compilation seems to work fine now. <br/> Thanks for support, <br/> Johann </p>

  @johannzüger in #9ef7288

<p> At last I found the mistake. For some reason the parameter COMFLG1 was missing in Fopts – at least compilation seems to work fine now. <br/> Thanks for support, <br/> Johann </p>

At last I found the mistake. For some reason the parameter COMFLG1 was missing in Fopts – at least compilation seems to work fine now.
Thanks for support,
Johann