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

[netCDF #IDN-696942]: confusion about how to install netcdf



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