NOTICE: This version of the NSF Unidata web site (archive.unidata.ucar.edu) is no longer being updated.
Current content can be found at unidata.ucar.edu.
To learn about what's going on, see About the Archive Site.
Hi Fie, next time you bundle a tarball, make the build script executable. You also may want to consider making a configure script. I have netCDF-3.6.1 installed and get the errors below on my Fedora 64 bit Linux server. Is there a missing class? Thank you, Dr. John M. Huddleston ncatt.h: In function ‘T feiliu::get_att_value(NcAtt*)’: ncatt.h:101: error: there are no arguments to ‘assert’ that depend on a template parameter, so a declaration of ‘assert’ must be available ncatt.h:101: error: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated) ncatt.h:112: error: there are no arguments to ‘assert’ that depend on a template parameter, so a declaration of ‘assert’ must be available ONetCDFFile.h: In member function ‘NcVar* feiliu::ONetCDFFile::copy_var(const NcVar*, T*, const size_t*, const size_t*)’: ONetCDFFile.h:78: error: there are no arguments to ‘assert’ that depend on a template parameter, so a declaration of ‘assert’ must be available ONetCDFFile.h:81: error: there are no arguments to ‘assert’ that depend on a template parameter, so a declaration of ‘assert’ must be available ONetCDFFile.h: In member function ‘NcVar* feiliu::ONetCDFFile::copy_var(const NcVar*, T*, const size_t*, const size_t*) [with T = const double]’: ncio.h:116: instantiated from ‘void feiliu::write_data(NcFile*, NcVar*, feiliu::ONetCDFFile*, const feiliu::array<T>&, size_t*, size_t*, bool) [with T = double]’ ncio.h:139: instantiated from ‘void feiliu::write_data(NcFile*, NcVar*, feiliu::ONetCDFFile*, const feiliu::array<T>&, bool) [with T = double]’ ncio.h:150: instantiated from ‘void feiliu::write_data(NcFile*, const char*, feiliu::ONetCDFFile*, const feiliu::array<T>&, bool) [with T = double]’ testnclib.cpp:46: instantiated from here ONetCDFFile.h:75: error: ‘assert’ was not declared in this scope ncatt.h: In function ‘T feiliu::get_att_value(NcAtt*)’: ncatt.h:101: error: there are no arguments to ‘assert’ that depend on a template parameter, so a declaration of ‘assert’ must be available ncatt.h:101: error: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated) ncatt.h:112: error: there are no arguments to ‘assert’ that depend on a template parameter, so a declaration of ‘assert’ must be available ONetCDFFile.h: In member function ‘NcVar* feiliu::ONetCDFFile::copy_var(const NcVar*, T*, const size_t*, const size_t*)’: ONetCDFFile.h:78: error: there are no arguments to ‘assert’ that depend on a template parameter, so a declaration of ‘assert’ must be available ONetCDFFile.h:81: error: there are no arguments to ‘assert’ that depend on a template parameter, so a declaration of ‘assert’ must be available ONetCDFFile.cpp: In member function ‘virtual NcDim* feiliu::ONetCDFFile::add_dim(const char*, long int)’: ONetCDFFile.cpp:20: error: ‘assert’ was not declared in this scope ONetCDFFile.cpp: In member function ‘virtual NcDim* feiliu::ONetCDFFile::add_dim(const char*)’: ONetCDFFile.cpp:32: error: ‘assert’ was not declared in this scope ONetCDFFile.cpp: In member function ‘virtual NcDim* feiliu::ONetCDFFile::add_dim(const NcDim*)’: ONetCDFFile.cpp:45: error: ‘assert’ was not declared in this scope ONetCDFFile.cpp: In member function ‘virtual NcVar* feiliu::ONetCDFFile::add_var(const char*, NcType, const NcDim*, const NcDim*, const NcDim*, const NcDim*, const NcDim*)’: ONetCDFFile.cpp:59: error: ‘assert’ was not declared in this scope ONetCDFFile.cpp: In member function ‘virtual NcVar* feiliu::ONetCDFFile::add_var(const char*, NcType, int, const NcDim**)’: ONetCDFFile.cpp:72: error: ‘assert’ was not declared in this scope ONetCDFFile.cpp: In member function ‘virtual NcVar* feiliu::ONetCDFFile::add_var(const NcVar*)’: ONetCDFFile.cpp:85: error: ‘assert’ was not declared in this scope ONetCDFFile.cpp: In member function ‘virtual NcVar* feiliu::ONetCDFFile::copy_var(NcVar*)’: ONetCDFFile.cpp:107: error: ‘assert’ was not declared in this scope ONetCDFFile.cpp: In member function ‘virtual NcVar* feiliu::ONetCDFFile::copy_var(const NcVar*, void*)’: ONetCDFFile.cpp:154: error: ‘assert’ was not declared in this scope ONetCDFFile.cpp: In member function ‘virtual bool feiliu::ONetCDFFile::add_att(NcAtt*)’: ONetCDFFile.cpp:196: error: ‘assert’ was not declared in this scope ncatt.h: In function ‘bool feiliu::copy_ncatt(T*, NcAtt*) [with T = NcVar]’: ONetCDFFile.cpp:99: instantiated from here ncatt.h:39: error: ‘assert’ was not declared in this scope ncatt.h: In function ‘bool feiliu::copy_ncatt(T*, NcAtt*) [with T = feiliu::ONetCDFFile]’: ONetCDFFile.cpp:208: instantiated from here ncatt.h:39: error: ‘assert’ was not declared in this scope ncatt.h: In function ‘T feiliu::get_att_value(NcAtt*)’: ncatt.h:101: error: there are no arguments to ‘assert’ that depend on a template parameter, so a declaration of ‘assert’ must be available ncatt.h:101: error: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated) ncatt.h:112: error: there are no arguments to ‘assert’ that depend on a template parameter, so a declaration of ‘assert’ must be available ncatt.cpp: In function ‘char* feiliu::get_att_string(NcAtt*)’: ncatt.cpp:4: error: ‘assert’ was not declared in this scope -----Original Message----- From: owner-netcdfgroup@xxxxxxxxxxxxxxxx on behalf of Fei Liu Sent: Thu 4/6/2006 12:28 PM To: Russ Rew Cc: Fei Liu; netcdfgroup@xxxxxxxxxxxxxxxx; Hanson, Kurt Subject: Announcing netcdf c++ wrapper library Hi Group, netcdf c++ wrapper library is a library around existing netcdf c++ library provided by unidata. It can be downloaded directly from here: ftp://ftp.gfdl.noaa.gov/pub/fil/netcdflib.tgz This library introduces a few key modern c++ techniques to class design and interface design. A new class, ONetCDFFile::NcFile, is introduced to make writing a netCDF file much easier based on an existing input netCDF file. This class contains template member functions that copies netCDF variables from input file to output file. It also provides book keeping records of attributes, dimensions, variables copied from one file to another. ncatt.h and ncatt.cpp captures key methods to copy attributes from a input object (NcFile or NcVar) to an output object. This wrapper uses facade design to provide a unified function interface. It also provides a template member function to easily retrieve value of a given attribute. ncio.h provides template functions to read and write data from/to a netCDF file. This class is tightly coupled with array.h. array.h is a small and efficient multiple dimension array implementation. Its access methods resembles fortran syntax and can be used very intuitively. All class and methods reside in namespace 'feiliu' to prevent name collision with other similar libraries. To build the example, use 'build'. All source codes are ISO c+ᄮ standard compliant. Let me know if you have any suggestions to improve this library. Thanks! Fei On Wed, 5 Apr 2006, Russ Rew wrote: > Hi Fei, > >> Hi Russ and Kurt, I have finished coding some wrapper interfaces to make >> using netCDF in C++ a little easier. I don't have a convenient way to >> publish my code (noaa has web page design requirement). Let me know if you >> want me to send a zip file to you. Enclosed is the source code of a test >> app to show you the improvements I've made over existing netcdfcpp >> classes (introducing namespace, facade design, template to netcdfcpp). > > Yes, thanks, please send a zip file with your improvements! > > I would like to test your changes for backwards compatibility and > maybe incorporate them in a future release, with credit to you, of > course. I also have a summer student working on the C++ interface > this summer. I might have her start with your wrappers and see what > other improvements are possible while maintaining backwards > compatibility with the current interface. > > Thanks again for your efforts in improving netCDF. > > --Russ > > _____________________________________________________________________ > > Russ Rew UCAR Unidata Program > russ@xxxxxxxxxxxxxxxx http://www.unidata.ucar.edu > > ============================================================================== To unsubscribe netcdfgroup, visit: http://www.unidata.ucar.edu/mailing-list-delete-form.html ============================================================================== ============================================================================== To unsubscribe netcdfgroup, visit: http://www.unidata.ucar.edu/mailing-list-delete-form.html ==============================================================================
netcdfgroup
archives: