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.

[netcdfgroup] Compiling NetCDF with current MinGW-W64

Hello,

I have been trying to compile current NetCDF git HEAD on MinGW-W64 (Windows 64 
with gcc 4.8.1) and found three issues that may or may not need to be fixed:

- There is a problem in libsrc/posixio.c. In line 1664 an "#ifdef O_BINARY" is 
commented out, but it should be there (instead of the "#if _MSC_VER"). Also, 
there is a debug statement left in the file. A patch is attached. The problem 
can also be found in netcdf-c-4.3.1-rc6.

- ALLOC_ONSTACK and FREE_ONSTACK is undefined. include/onstack.h contains no 
definition for the "#elif defined(_WIN32) || defined(_WIN64)" conditional. 
Using a non-constant value for the array size is supported in gcc-4.8.1, but I 
don't have MSVC here to check this as well.

- I also believe that the toplevel CMakeLists.txt should have _FILE_OFFSET_BITS 
defined when testing the size of "off_t". This means SIZEOF_OFF_T is 4 on 
MinGW-W64, although _FILE_OFFSET_BITS=64 sets it to 8. Not sure if this has any 
adverse effect on the code. Patch is attached, but code seems to work without 
the patch applied.

Best,
Lars

Attachment: CMakeLists.txt.patch
Description: CMakeLists.txt.patch

Attachment: posixio.c.patch
Description: posixio.c.patch

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