Charlie Zender - 2007-05-22

Hi All,

This is a heads up that I've added support for the new netCDF4 atomic types throughout NCO.
There are a huge number of changes that touch nearly all parts of the code.
Any testing you can do would be appreciated.
I'm primarily concerned with verifying that it still builds and installs correctly
when you point it to netCDF3 libraries, i.e., I want this to be backwards compatible.
To build with netCDF4 (which is turned off by default), use

cd ~/nco/bld;make NETCDF4=Y allinone

or

configure --enable-netcdf4

and make sure your library and include paths point to the netCDF4 installation.

Thanks,
Charlie

P.S. Below is the text from the upcoming 3.2.1 ANNOUNCE, which I will make soon
if no major problems are reported.

Release 3.2.1 contains functional (though limited) netCDF4 support,
improved attribute copying, new documentation, new ncap2 features,
and better IRIX support.
This release _requires_ netCDF 3.6.1 or newer to build correctly.

First, a paragraph or three about netCDF4 support:
Support for netCDF4 features will be incremental.
You must build NCO with netCDF4 to see this support.
There is no reason that we know of _not_ to build with netCDF4.
The main netCDF4 features NCO currently supports are the new
atomic data types (ubyte, ushort, uint, int64, and uint64).
(The eight-byte integer support is especially helpful).
All NCO operators support these types, e.g., ncks prints them,
ncra averages them, and ncap2 scripts with them.

netCDF4-enabled NCO handles netCDF3 files without change.
In addition, it automagically handles netCDF4 (HDF) files:
If you feed NCO netCDF4 files, it will produce netCDF4 output.
If you feed NCO netCDF3 files, it will produce netCDF3 output.
Use the handy-dandy -4 switch to convert netCDF3 to netCDF4.

That said, netCDF4 is beta software so caveat emptor:
Problems with the netCDF4 and HDF libraries are still being fixed.
NCO support for netCDF4 atomic types is relatively untested.
The binary distributions (RPMs and debs) still use netCDF3 for now.
If you want the netCDF4 support, you'll have to build NCO yourself.