This archive contains answers to questions sent to Unidata support through mid-2025. Note that the archive is no longer being updated. We provide the archive for reference; many of the answers presented here remain technically correct, even if somewhat outdated. For the most up-to-date information on the use of NSF Unidata software and data services, please consult the Software Documentation first.
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