Re: [netcdfgroup] what is status of netCDF3 vs netCDF4?

Thank you, Ward.

On 11/06/2014 06:06 PM, Ward Fisher wrote:
Thanks all for the input re: bundling the different interfaces; it’s
clear this is more convenient. I would argue that the benefit is not
strictly to us developers at the expense of the poor users (as somebody
put it :) ); the split makes it much easier to provide support for
individual interfaces, as well as faster bug fixes as previously mentioned.

There are significant technical hurdles to recombining the interfaces
into a single project, as it was for versions 4.1.3 and prior.

However, the various interfaces have a hierarchical dependence,
all of them - except for Java - depending on the C interface.
This gives them some sort of unity, at least when one has to *use* them.

Nobody can get the F90 interface to work without the Fortran (77) one,
and the latter doesn't work without the C interface either.
Hence, from the user/programmer standpoint, I think breaking this
unit into smaller pieces is artificial and not helpful.

Additional difficulties happen also when one has to build more tools
in the NetCDF universe (NCO, NCL, CDO, etc) which depend on NetCDF
(and sometimes on specific library versions).
Those difficulties may also be reduced by having a clear and unified
public distribution.

However, I guess there may be a way to reconcile the two,
keeping the developement in separate projects,
and yet provide a bundled distribution for
users/programmers as it was before.

There may
be avenues for making distribution more transparent and easier to keep
track of from the end user point-of-view, however. I may start a new
thread once I’ve explored a couple of ideas.


That would really be great for NetCDF users/programmers,
and hopefully won't be a hurdle for the developers.

As others list subscribers certainly did, I built NetCDF C 4.3.0,
along with Fortran 4.2 and C++4.4.2,
which are available from Unidata as separate tarballs.
I keep them under a single environment module in our clusters (actually
one per compiler), which is very convenient from the user point of view,
and seems to be all we need to compile and run correctly a
large number of programs (from NCAR, GFDL, MPII, MIT,
some inhouse codes, etc).

But what took some time for me to setup, may not be so
hard for the developers.
So, maybe Unidata could bundle the three main interfaces
into a single public/external/vanilla distribution,
perhaps under a single release name
(NetCDF.all.X.Y.Z perhaps?), which would build from a single configure/make/make_install action, as it was done until 4.3.1,
and likewise for subsequent public releases.

The existence of a single bundled release also reassures the end user
that he is dealing with a consistent software package.
(S)he doesn't need to go crazy to find out what set of specific
interface releases are consistent with each other, or to spend too
much time building/testing each one separately.

Anyway, I'm glad that somehow my hijacking of this thread
was not just an annoyance to the list,
but had also a productive side.

Thank you
Gus Correa

Regarding the question below about binary distributions for OSX and
Windows. We provide Windows binaries because, frankly, building with
Visual Studio can be a bit of a mess, and providing the libraries
packaged with dependencies seemed like the easiest way to head off a lot
of problems. These can be downloaded here:

  * http://www.unidata.ucar.edu/software/netcdf/docs/winbin.html

I wasn’t under the impression that there was much need for OSX binary
distributions, since OSX is essentially BSD and works with autotools
and/or CMake. I know that the popular package managers |homebrew| and
|macports| have netcdf packages (which we do not maintain), and had
always thought these must be sufficient, as nobody has said otherwise.
I’d be really interested to know if these were insufficient!

Thanks all,

-Ward

On Thu, Nov 6, 2014 at 3:34 PM, Chris Barker <chris.barker@xxxxxxxx
<mailto:chris.barker@xxxxxxxx>> wrote:

    On Thu, Nov 6, 2014 at 12:57 PM, Gus Correa <gus@xxxxxxxxxxxxxxxxx
    <mailto:gus@xxxxxxxxxxxxxxxxx>> wrote:

        PS - Yes, I do understand the initial thread was about
        NetCDF3 vs NetCDF4, which is a separate discussion in itself.


    Bringing it back ---

    One of the main reasons users don't use netcdf4 is that it's
    substantially harder to build (and more heavy weight). As (at least
    for the c libs) the netcdf4 libs fully support netcdf3, there really
    isn't any reason for all client code to use the netcdf4 libraries,
    regardless of whether they are actually using netcdf4 files.

    So anything Unidata can do to make it easier for end users to use
    netcdf4 will really help:

    Easier to build

    Good binary distributions (for Window and probably OS-X anyway)


    ???

    -Chris


    --

    Christopher Barker, Ph.D.
    Oceanographer

    Emergency Response Division
    NOAA/NOS/OR&R (206) 526-6959 <tel:%28206%29%20526-6959>   voice
    7600 Sand Point Way NE (206) 526-6329 <tel:%28206%29%20526-6329>   fax
    Seattle, WA  98115 (206) 526-6317 <tel:%28206%29%20526-6317>   main
    reception

    Chris.Barker@xxxxxxxx <mailto:Chris.Barker@xxxxxxxx>



  • 2014 messages navigation, sorted by:
    1. Thread
    2. Subject
    3. Author
    4. Date
    5. ↑ Table Of Contents
  • Search the netcdfgroup archives: