[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

20011206: Linux installation; NAG Fortran



Verena,

>Date: Thu, 06 Dec 2001 11:27:16 +0100
>From: Verena Cals <address@hidden>
>Organization: ?
>To: Steve Emmerson <address@hidden>
>Subject: Re: 20011127: installing problem: using NAG Fortran
>Keywords: 200111260830.fAQ8UKN14318

The above message contained the following:

> like you mailed I've tried to install netcdf with the C macro
> NAGf90Fortran. First I used the f95 NAG Compiler, but this failed. Then
> I tried the same using the f90 NAG Compiler, but this produced the same
> failure. It seems that some netcdf internal functions have problems to
> call different subroutines. It will be nice if you could look at the
> error-message once more. 
> 
> A. > uname -a
>    Linux ich406 2.2.16 #1 Wed Aug 2 20:22:26 GMT 2000 i686 unknown
> 
> B. > more VERSION
>    3.5.0
> 
> C. > which gcc
>    /usr/bin/gcc
>    > which f90
>    /usr/local/bin/f90
>    > which g++
>    /usr/bin/g++
>    
> D. > more configure.log
>    creating cache ./config.cache
>    checking for top-level source-directory
>    /home1/icg152/Uebungen/NetCDF/netcdf-3.5.0/src
>    checking for m4 preprocessor
>    checking for m4... m4
>    checking m4 flags... -B10000
>    checking C compiler "/usr/bin/gcc"... works
>    checking how to make dependencies... false
>    checking for /usr/bin/g++... /usr/bin/g++
>    checking C++ compiler "/usr/bin/g++"... works
>    checking how to run the C preprocessor... /usr/bin/gcc -E
>    checking user-defined Fortran-77 compiler "/usr/local/bin/f90"...
> works
>    checking for Fortran .F compiler...
>    checking if Fortran-77 compiler handles *.F files... yes
>    checking "/usr/local/bin/f90" as Fortran-90 compiler... works
>    checking for nm utility
>    checking for nm... nm
>    checking nm flags...
>    checking for C-equivalent to Fortran routine "SUB"... sub_
>    checking for Fortran "byte"... no
>    checking for Fortran "integer*1"... yes
>    checking for Fortran "integer*2"... yes
>    checking if Fortran "integer*1" is C "signed char"... yes
>    checking if Fortran "integer*1" is C "short"... no
>    checking if Fortran "integer*1" is C "int"... no
>    checking if Fortran "integer*1" is C "long"... no
>    checking if Fortran "integer*2" is C "short"... yes
>    checking if Fortran "integer*2" is C "int"... no
>    checking if Fortran "integer*2" is C "long"... no
>    checking if Fortran "integer" is C "int"... yes
>    checking if Fortran "real" is C "float"... yes
>    checking if Fortran "doubleprecision" is C "double"... yes
>    checking for Fortran-equivalent to netCDF "byte"... integer*1
>    checking for Fortran-equivalent to netCDF "short"... integer*2
>    checking for math library
>    checking for tanh in -lc... no
>    checking for tanh in -lm... yes
>    checking for ar utility
>    checking for ar... ar
>    checking ar flags... cru
>    checking for nm utility
>    checking for nm... (cached) nm
>    checking nm flags...
>    checking for ranlib... ranlib
>    checking for stdlib.h... yes
>    checking for sys/types.h... yes
>    checking for strerror... yes
>    checking for working ftruncate()... yes
>    checking for working alloca.h... yes
>    checking for alloca... yes
>    checking for st_blksize in struct stat... yes
>    checking for IEEE floating point format... yes
>    checking for ANSI C header files... yes
>    checking for size_t... yes
>    checking for off_t... yes
>    checking for ssize_t... yes
>    checking for ptrdiff_t... yes
>    checking for uchar... no
>    checking whether char is unsigned... no
>    checking whether byte ordering is bigendian... no
>    checking size of short... 2
>    checking size of int... 4
>    checking size of long... 4
>    checking size of float... 4
>    checking size of double... 8
>    checking size of off_t... 4
>    checking size of size_t... 4
>    checking for manual-page index command...
>    checking binary distribution directory...
> /home/ftp/pub/binary/dummy_system
>    updating cache ./config.cache
>    creating ./config.status
>    creating macros.make
>    udcreating fortran/nfconfig.inc
>    creating libsrc/ncconfig.h

The above looks OK.

> E.> more config.log

Because the "configure.log" file looked OK, I've omitted the "config.log"
file from this reply.

> F.  > make.log
> 
> /bin/ksh: make.log: cannot execute - Keine Berechtigung
> icg152@ich406:Uebungen/NetCDF/netcdf-3.5.0/src > more make.log
> make[1]: Entering directory
> `/home1/icg152/Uebungen/NetCDF/netcdf-3.5.0/src'
> 
> Making `all' in directory
> /home1/icg152/Uebungen/NetCDF/netcdf-3.5.0/src/libsrc
> make[2]: Entering directory
> `/home1/icg152/Uebungen/NetCDF/netcdf-3.5.0/src/libs
> rc'
> /usr/bin/gcc -c -O -I.  -DNDEBUG -DNAGf90Fortran attr.c
> /usr/bin/gcc -c -O -I.  -DNDEBUG -DNAGf90Fortran dim.c
> /usr/bin/gcc -c -O -I.  -DNDEBUG -DNAGf90Fortran error.c
> /usr/bin/gcc -c -O -I.  -DNDEBUG -DNAGf90Fortran -DVERSION=`cat
> ../VERSION` libv
> ers.c
> /usr/bin/gcc -c -O -I.  -DNDEBUG -DNAGf90Fortran nc.c
> /usr/bin/gcc -c -O -I.  -DNDEBUG -DNAGf90Fortran ncio.c
> /usr/bin/gcc -c -O -I.  -DNDEBUG -DNAGf90Fortran ncx.c
> /usr/bin/gcc -c -O -I.  -DNDEBUG -DNAGf90Fortran putget.c
> /usr/bin/gcc -c -O -I.  -DNDEBUG -DNAGf90Fortran string.c
> /usr/bin/gcc -c -O -I.  -DNDEBUG -DNAGf90Fortran v1hpg.c
> /usr/bin/gcc -c -O -I.  -DNDEBUG -DNAGf90Fortran v2i.c
> /usr/bin/gcc -c -O -I.  -DNDEBUG -DNAGf90Fortran var.c
> ar cru libnetcdf.a attr.o dim.o error.o libvers.o nc.o ncio.o ncx.o
> putget.o str
> ing.o v1hpg.o v2i.o var.o
> ranlib libnetcdf.a
> make[2]: Leaving directory
> `/home1/icg152/Uebungen/NetCDF/netcdf-3.5.0/src/libsr
> c'
> 
> Returning to directory /home1/icg152/Uebungen/NetCDF/netcdf-3.5.0/src
>
> make[1]: Leaving directory
> `/home1/icg152/Uebungen/NetCDF/netcdf-3.5.0/src'
> make[1]: Entering directory
> `/home1/icg152/Uebungen/NetCDF/netcdf-3.5.0/src'

Looks like the C implementation was built OK.

> Making `all' in directory
> /home1/icg152/Uebungen/NetCDF/netcdf-3.5.0/src/fortran
> 
> make[2]: Entering directory
> `/home1/icg152/Uebungen/NetCDF/netcdf-3.5.0/src/fort
> ran'
> /usr/bin/gcc -c -O -I../libsrc  -DNDEBUG -DNAGf90Fortran fort-attio.c
> /usr/bin/gcc -c -O -I../libsrc  -DNDEBUG -DNAGf90Fortran fort-control.c
> /usr/bin/gcc -c -O -I../libsrc  -DNDEBUG -DNAGf90Fortran fort-dim.c
> /usr/bin/gcc -c -O -I../libsrc  -DNDEBUG -DNAGf90Fortran fort-genatt.c
> /usr/bin/gcc -c -O -I../libsrc  -DNDEBUG -DNAGf90Fortran fort-geninq.c
> /usr/bin/gcc -c -O -I../libsrc  -DNDEBUG -DNAGf90Fortran fort-genvar.c
> /usr/bin/gcc -c -O -I../libsrc  -DNDEBUG -DNAGf90Fortran fort-lib.c
> /usr/bin/gcc -c -O -I../libsrc  -DNDEBUG -DNAGf90Fortran fort-misc.c
> /usr/bin/gcc -c -O -I../libsrc  -DNDEBUG -DNAGf90Fortran fort-v2compat.c
> /usr/bin/gcc -c -O -I../libsrc  -DNDEBUG -DNAGf90Fortran fort-vario.c
> /usr/bin/gcc -c -O -I../libsrc  -DNDEBUG -DNAGf90Fortran fort-var1io.c
> /usr/bin/gcc -c -O -I../libsrc  -DNDEBUG -DNAGf90Fortran fort-varaio.c
> /usr/bin/gcc -c -O -I../libsrc  -DNDEBUG -DNAGf90Fortran fort-varmio.c
> /usr/bin/gcc -c -O -I../libsrc  -DNDEBUG -DNAGf90Fortran fort-varsio.c
> ar cru ../libsrc/libnetcdf.a fort-attio.o fort-control.o fort-dim.o
> fort-genatt.
> o fort-geninq.o fort-genvar.o fort-lib.o fort-misc.o fort-v2compat.o
> fort-vario.
> o fort-var1io.o fort-varaio.o fort-varmio.o fort-varsio.o
> ranlib ../libsrc/libnetcdf.a
> make[2]: Leaving directory
> `/home1/icg152/Uebungen/NetCDF/netcdf-3.5.0/src/fortr
> an'
> 
> Returning to directory /home1/icg152/Uebungen/NetCDF/netcdf-3.5.0/src
> 
> make[1]: Leaving directory
> `/home1/icg152/Uebungen/NetCDF/netcdf-3.5.0/src'
> make[1]: Entering directory
> `/home1/icg152/Uebungen/NetCDF/netcdf-3.5.0/src'

Looks like the Fortran-77 implementation was built OK.

> Making `all' in directory
> /home1/icg152/Uebungen/NetCDF/netcdf-3.5.0/src/f90
> 
> make[2]: Entering directory
> `/home1/icg152/Uebungen/NetCDF/netcdf-3.5.0/src/f90'
> /usr/local/bin/f90 -c -O typeSizes.f90
> /usr/local/bin/f90 -c -O netcdf.f90
> make[2]: Leaving directory
> `/home1/icg152/Uebungen/NetCDF/netcdf-3.5.0/src/f90'make[1]: Leaving
> directory `/home1/icg152/Uebungen/NetCDF/netcdf-3.5.0/src'
> les.f90, line 41: Unused symbol LOCALINDEX
>          detected at NF90_GET_VAR_TEXT@<end-of-statement>
> Warning: netcdf_text_variables.f90, line 41: Unused symbol STRINGLENGTH
>          detected at NF90_GET_VAR_TEXT@<end-of-statement>
> Warning: netcdf_text_variables.f90, line 41: Unused dummy variable MAP
>          detected at NF90_GET_VAR_TEXT@<end-of-statement>
> Warning: netcdf_text_variables.f90, line 41: Unused symbol COUNTER
>          detected at NF90_GET_VAR_TEXT@<end-of-statement>
> Warning: netcdf_text_variables.f90, line 41: Unused symbol TEXTDIMIDS
>          detected at NF90_GET_VAR_TEXT@<end-of-statement>
> Warning: netcdf_expanded.f90, line 17: Unused symbol COUNTER
>          detected at NF90_PUT_VAR_ONEBYTEINT@<end-of-statement>
> Warning: netcdf_expanded.f90, line 34: Unused symbol COUNTER
>          detected at NF90_PUT_VAR_TWOBYTEINT@<end-of-statement>
> Warning: netcdf_expanded.f90, line 51: Unused symbol COUNTER
>          detected at NF90_PUT_VAR_FOURBYTEINT@<end-of-statement>
> Warning: netcdf_expanded.f90, line 68: Unused symbol COUNTER
>          detected at NF90_PUT_VAR_FOURBYTEREAL@<end-of-statement>
> Warning: netcdf_expanded.f90, line 85: Unused symbol COUNTER
>          detected at NF90_PUT_VAR_EIGHTBYTEREAL@<end-of-statement>
> Warning: netcdf_expanded.f90, line 102: Unused symbol COUNTER
>          detected at NF90_GET_VAR_ONEBYTEINT@<end-of-statement>
> Warning: netcdf_expanded.f90, line 119: Unused symbol COUNTER
>          detected at NF90_GET_VAR_TWOBYTEINT@<end-of-statement>
> Warning: netcdf_expanded.f90, line 136: Unused symbol COUNTER
>          detected at NF90_GET_VAR_FOURBYTEINT@<end-of-statement>
> Warning: netcdf_expanded.f90, line 153: Unused symbol COUNTER
>          detected at NF90_GET_VAR_FOURBYTEREAL@<end-of-statement>
> Warning: netcdf_expanded.f90, line 170: Unused symbol COUNTER
>          detected at NF90_GET_VAR_EIGHTBYTEREAL@<end-of-statement>
> Warning: netcdf.f90, line 53: Unused external reference NF_GET_VAR1_TEXT
>          detected at NETCDF@<end-of-statement>
> Warning: netcdf.f90, line 53: Unused external reference NF_PUT_VAR1_TEXT
>          detected at NETCDF@<end-of-statement>
> [f95 continuing despite warning messages]

The above warning messages may be safely ignored.  You might see if
there's an option to turn them off.

> Error: netcdf_attributes.f90, line 95: Inconsistent structure for arg 6
> in callto NF_PUT_ATT_INT1

The above appears to be complaining about changes to the type of the
"values" argument in the netCDF attribute writing routines. It is
absolutely necessary that the type of this argument be allowed to vary.
I see from previous support-email on this subject that the NAG Fortran
option "-mismatch" was used. I suggest that you try that.

Try the following:

    1.  Go to the top-level source directory.

    2.  Perform steps 3 through 5 near the end of the file INSTALL.html.

    3.  Ensure that the FFLAGS environment variable contains the string
        "-mismatch" (without the quotes).

    5.  Perform steps 6 through 9 near the end of the file
        INSTALL.html.

Please let me know if this helps.

Regards,
Steve Emmerson   <http://www.unidata.ucar.edu>