Official GitHub repository for netCDF-C libraries and utilities.
C M4 Shell CMake HTML Roff Other
Failed to load latest commit information.
.github Put back in top level of repository. Feb 24, 2016
cmake Fix some cmake syntax errors Sep 16, 2013
docs Added release to release header. Nov 21, 2016
examples Corrected an inconsistency between the documentation and the example. Jan 8, 2016
h5_test Add missing #include "err_macros.h" to tst_h_par.c Nov 29, 2016
include Brought definitions into sync Jan 9, 2017
libdap2 Fix for Github issue 314. Sep 2, 2016
libdispatch Tweaked fix. Jan 9, 2017
liblib Bumped SO version. Nov 21, 2016
libsrc Deleted extraneous header file, removed extraneous . Jan 9, 2017
libsrc4 Merging pull request from gsjaardema, see #335 for more information. Jan 30, 2017
libsrcp Corrected logic use of USE_PARALLEL for no-hdf5 but still using pnetcdf. Nov 9, 2015
m4 moving to trunk subdir Jun 3, 2010
nc_test Housekeeping on large file tests. Nov 18, 2016
nc_test4 Corrected a failure in tst_fill_attr_vanish.c seen under Visual Studi… Jan 11, 2017
ncdap_test Modified ncdap_test to allow a different method Jan 19, 2017
ncdump Merge branch 'master' into alias.dmh Jan 24, 2017
ncgen Working out an error with unistd.h in windows. Jan 30, 2017
ncgen3 Merge branch 'master' into cdf-5, in preparation for merging the CDF-… Nov 5, 2015
nctest Refactoring tests to separate out error macros from tests, in support… Oct 21, 2016
oc2 Fix for Github issue 314. Sep 2, 2016
.gitignore Updated .gitignore. May 13, 2016
.travis.yml Propegated autoconf options in travis.yml Oct 24, 2016
CMakeInstallation.cmake Changed dependencies for debian package builds to remove development … Dec 15, 2014
CMakeLists.txt Corrected for new cmake variables used by hdf5. Feb 22, 2017
COMPILE.cmake.txt Merging from CMake branch in preparation for 4.3.0 release. Apr 29, 2013 Put back in top level of repository. Feb 24, 2016
COPYRIGHT Removed stray Doxygen tags, added some more explicit information to t… Dec 4, 2014 Cleaning up ctest site identification. Feb 2, 2015
CTestCustom.cmake Reduced default warning number to accomodate bandwidth limitations on… Sep 16, 2013 Additional CMake support, CPack support. Aug 29, 2012 Removed old install directions, copied directions from into root dire… Apr 6, 2015
Make0 1. synch with oc Jan 1, 2015 pull request Oct 12, 2015
PostInstall.cmake Reorganized postinstall scripts. Nov 18, 2014 Corrected some dead links in README. May 13, 2016 Updated release notes. Jan 30, 2017
acinclude.m4 many changes for memory fixes Nov 29, 2010
cf A netcdfgroup email Jun 24, 2016
cf.cmake We are now into the trial and error phase Jan 19, 2017 Added files to support an 'uninstall' target. Oct 11, 2012 Integrating a big endian test. Feb 8, 2017 Merging pull request from gsjaardema, see #335 for more information. Jan 30, 2017
dods.m4 Fix common typos Aug 20, 2015 move from oc1.0 to oc2.0; create new dir oc2 Jul 31, 2012 More cleaning up of configuration status messages. Nov 18, 2015
mclean catch some distclean files May 13, 2012 Removed stray info lines in nc-config templates. Nov 1, 2016 Removed stray info lines in nc-config templates. Nov 1, 2016 actually include target info in export config Aug 21, 2014 Include some doxygen input files that were inadvertently omitted. Fix… Mar 28, 2012 Tied to the current netcdf-fortran release (4.4.2). Feb 2, 2015
test_prog.F moving to trunk subdir Jun 3, 2010
test_prog.c moving to trunk subdir Jun 3, 2010
test_prog.f90 moving to trunk subdir Jun 3, 2010
wjna Backadded the fix of Jira-228 Jun 13, 2014

Unidata NetCDF

Build Status Coverity Scan Build Status


The Unidata network Common Data Form (netCDF) is an interface for scientific data access and a freely-distributed software library that provides an implementation of the interface. The netCDF library also defines a machine-independent format for representing scientific data. Together, the interface, library, and format support the creation, access, and sharing of scientific data. The current netCDF software provides C interfaces for applications and data. Separate software distributions available from Unidata provide Java, Fortran, Python, and C++ interfaces. They have been tested on various common platforms.


NetCDF files are self-describing, network-transparent, directly accessible, and extendible. Self-describing means that a netCDF file includes information about the data it contains. Network-transparent means that a netCDF file is represented in a form that can be accessed by computers with different ways of storing integers, characters, and floating-point numbers. Direct-access means that a small subset of a large dataset may be accessed efficiently, without first reading through all the preceding data. Extendible means that data can be appended to a netCDF dataset without copying it or redefining its structure.


NetCDF is useful for supporting access to diverse kinds of scientific data in heterogeneous networking environments and for writing application software that does not depend on application-specific formats. For information about a variety of analysis and display packages that have been developed to analyze and display data in netCDF form, see

More information

For more information about netCDF, see

Latest releases

You can obtain a copy of the latest released version of netCDF software for various languages:


Copyright and licensing information can be found here, as well as in the COPYRIGHT file accompanying the software


To install the netCDF-C software, please see the file INSTALL in the netCDF-C distribution, or the (usually more up-to-date) document:


A language-independent User's Guide for netCDF, and some other language-specific user-level documents are available from:

A mailing list,, exists for discussion of the netCDF interface and announcements about netCDF bugs, fixes, and enhancements. For information about how to subscribe, see the URL


We appreciate feedback from users of this package. Please send comments, suggestions, and bug reports to