[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
20040415: netCDF on Linux with NAG fortran
- Subject: 20040415: netCDF on Linux with NAG fortran
- Date: Thu, 15 Apr 2004 09:01:11 -0600
Sandy,
>Date: Thu, 15 Apr 2004 09:09:53 -0400
>From: Sandy Sillman <address@hidden>
>Organization: University of Michigan
>To: Steve Emmerson <address@hidden>
>Subject: Re: 20040414: netCDF on Linux with NAG fortran
> Keywords: 200404012156.i31LuuCT013274 netCDF 3.5.1
The above message contained the following:
> I re-did the test with 'make clean' and got the same results.
>
> When I did the original test, it was part of a complete re-installation in a
> new directory. (I had already installed netCDF. For this test I un-tarred
> the netCDF tar file, went into the new created directory, did configure,
> make and make test. )
>
> This time I went into the previously installed file (...src), went to
> nf_test and 'make clean'
>
> ( make clean
> rm -f *.o *.a *.so *.sl *.i *.Z core times lint.out nf_test scratch.nc *.f77
> )
>
> The results are the same.
>
> This may be because I had already installed netCDF and moved the files
> (bin... include... lib... src...) to a different directory. The first
> "make test" was part of a completely different installation, but perhpas it
> was confused by the installed version elsewhere.
The "make test" command doesn't use any installed components of the
netCDF package: only the components in the "src" directory-hierarchy.
Consequently, you don't have to worry about whether or not you moved any
installed files or directories.
> Sandy Sillman
>
> EXCERPT OF TEST.LOG:
> Returning to directory /home/sillman/cmaq03/lib/netCDF/Linux/src
>
> make[1]: Leaving directory `/home/sillman/cmaq03/lib/netCDF/Linux/src'
> make[1]: Entering directory `/home/sillman/cmaq03/lib/netCDF/Linux/src'
>
> Making `test' in directory /home/sillman/cmaq03/lib/netCDF/Linux/src/nf_test
>
> make[2]: Entering directory
> `/home/sillman/cmaq03/lib/netCDF/Linux/src/nf_test'
> + /usr/local/bin/f95 -c -O -I /usr/local/lib/fl90_modules -dusty -w
> test_get.F
> + /usr/local/bin/f95 -c -O -I /usr/local/lib/fl90_modules -dusty -w
> test_put.F
> + /usr/local/bin/f95 -c -O -I /usr/local/lib/fl90_modules -dusty -w
> nf_error.F
> + /usr/local/bin/f95 -c -O -I /usr/local/lib/fl90_modules -dusty -w
> nf_test.F
> + /usr/local/bin/f95 -c -O -I /usr/local/lib/fl90_modules -dusty -w
> test_read.F
> + /usr/local/bin/f95 -c -O -I /usr/local/lib/fl90_modules -dusty -w
> test_write.F
> + /usr/local/bin/f95 -c -O -I /usr/local/lib/fl90_modules -dusty -w util.F
> /usr/bin/gcc -c -O -DNDEBUG -DNAGf90Fortran fortlib.c
> /usr/local/bin/f95 -o nf_test -O -I /usr/local/lib/fl90_modules -dusty -w
> test_get.o test_put.o nf_error.o nf_test.o test_read.o test_write.o util.o
> fortlib.o ../libsrc/libnetcdf.a -lm -lg2c
> ./nf_test -c
> *** Testing nf_strerror ...
> *** Testing nf_open ...
> nf_open: No such file or directory
The sequence of messages in the above should have been
...
./nf_test -c
./nf_test
*** Testing nf_strerror ...
*** Testing nf_open ...
...
The fact that the "./nf_test" message is missing leads me to suspect
that the program didn't see the "-c" option for some reason. The
"-c" option causes the test netCDF file to be created. This is also
consistent with the error message about the test netCDF file not existing.
I suspect a problem with the implementation of your getarg() routine
(I know, you just found it). If you know Fortran-77, then I suggest
editing the file "nf_test/nf_test.F" -- adding diagnostic print
statements around where the "getarg()" routine is used.
Alternatively,
you could rebuild the netCDF package from scratch after specifying
debug options (instead of optimize options) to the C and Fortran-77
compilers (in the CFLAGS and FFLAGS environment variables,
respectively). The execute the "nf_test" program under a debugger and
see what the program does around the getarg() calls.
Can you do one of these things?
Regards,
Steve Emmerson