NOTE: The netcdf-porting
mailing list is no longer active. The list archives are made available for historical reasons.
Hi, I am trying to compile NetCDF under Visual Studio 2008 Prof. (aka VS 9.0). Yes, I know: every new version of Visual Studio has new surprises. I attach notes with details of the problems I encountered. I tried the current 4.0 stable build as well as the daily snapshots of NetCDF 3 and 4. As I am still unable to compile the library I will use the last available binaries: for NetCDF 3.6.1. However, I have a couple of suggestions, if that is ok: - The win32 binaries were not easy to find. It would seem logical to put the link on the page where other (non-Windows) people can download their binaries. - It would be nice if you made newer builds available. I use VS 2008, but if you can compile NetCDF 4.0 with VS 2005, I could use the resulting library. - New versions of Visual C++ (incl. 2008) are available for free from msdn.microsoft.com, as so-called "express editions". The express version does not have all the features of prof. edition, but it should be ok for testing the distribution. - I wanted to compile from the command line, but I do not know how to. There is no "makefile", and Microsoft's nmake would not accept makefile.in as input. In any case, command-line compilation might prove more resilient to Microsoft's ever-changing ideas on how to improve their build system. Thanks and best wishes, Maciej.
Buidling NetCDF under VS 2008. I tried: NetCDF 4.0 (stable) and development snapshots: netcdf-3.6.3-snapshot2008080506, netcdf-4.0-snapshot2008073106. Here is the detailed description of the problems and some workarounds. 1. VS converted the sln file to the new version. I removed the /Wp64 compiler option (deprecated). 2. I got errors resulting from the definition typedef long _off_t in <sys/types.h>. This issue was previously dicussed on the list. I resolved it by addin the lines: #ifndef _OFF_T_DEFINED typedef long _off_t; /* file offset value */ #define _OFF_T_DEFINED #endif before #include <sys/types.h> in nc.h. 3. Some include files where missing: inttypes.h unistd.h I got inttypes.h and a compatible stdint.h from wikipedia. I created an empty unistd.h. I got this problem in the stable 4.0 release, and then, since I already had the files in standard directories, it did not come up anymore. 4. I had to replace: extern char *sys_errlist[]; with extern char **sys_errlist; in the definition of strerror(int errnum) in error.c. 5. I am still getting unresolved externals: _utf8proc_NFC _utf8proc_check I do not know how to deal with them.
netcdf-porting
archives: