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.
Davide, > Thanks for the message, please see my replies inline below. > > >> IT looks like this function is available only when you compile netcdf > >> with some options, but it is not clear to me which ones. In > >> particular, > >> it is not available for the following two installations > > > > nf90_create() is just one of the functions in the netCDF Fortran > > library. It is available for an installation that has working Fortran > > compilers that the configure script can find and for which the netCDF > > Fortran library is built and installed. It's not a special Fortran > > function that requires extra compiler options, if the Fortran-90 > > library was installed successfully then nf90_create() is in it. > > Ok. > > > I can think of several reasons for the two lines above: > (snip) > > Was "make check" run when netCDF was installed on Janus? > > I am not directly involved in building software on Janus, but I passed > this information to the people who are (Ticket#2012061810000031 for the > record) > > >> 2) Bluefire: > > What's the evidence that nf90_create() is missing in this case? > > Trying to build a hello world code that uses it fails with "Entity > nf90_inq_varids has undefined type." That's strange, nf90_create doesn't call nf90_inq_varids, as gdb shows when setting a breakpoint in nf90_inq_varids before calling nf90_create. > Note that this particular installation has happened with the flag: > --disable-netcdf-4 (not sure why nc-config does not say it) It looks like nc-config *does* report that netCDF-4 was disabled with a configure option, as the output includes: > --has-nc4 -> no > --has-hdf5 -> no > --has-hdf4 -> no > > If > > "make check" was run when netCDF was installed, it tests all the > > netCDF Fortran functions and could not have completed successfully > > unless nf90_create() worked as intended. If you still have the source > > directories and "make clean" hasn't been run from the top level where > > netCDF was built, can you go to examples/F90 and invoke > > > > make clean check > > > > That should test all the functions and also show how the Fortran-90 > > library was successfully invoked. > > Of course I don't. Our filesystems are periodically scrubbed and > everything that is not explicitly saved it's automatically deleted. I > did manually save everything I thought it could be useful, namely: > > - output of "env" right before executing configure > - config.log and config.status > - redirection of stdout and stderr while running configure > - redirection of stdout and stderr while running make > - redirection of stdout and stderr while running make check > > I can send these to you as an attachment, or look into them for > something suspicious (grepping for FAIL and PASS into the make check > output finds a bunch of PASS'es and a couple of expected failures) I guess I would need a small C program that demonstrates the problem. I tried to duplicate it with a small f90 program linked to netcdf-4.2 (built with --disable-netcdf-4) that called nf90_create and then closed the file and exited. It ran to completion, and never called nf90_inq_varids. Lacking a way to duplicate the symptoms of the problem, I don't know what happened. --Russ Russ Rew UCAR Unidata Program address@hidden http://www.unidata.ucar.edu Ticket Details =================== Ticket ID: IDN-696942 Department: Support netCDF Priority: Normal Status: Closed