Due to the current gap in continued funding from the U.S. National Science Foundation (NSF), the NSF Unidata Program Center has temporarily paused most operations. See NSF Unidata Pause in Most Operations for details.

bug in netCDF 2.3 under VMS: SWAP needs defining

Greetings,

There's a bug in the VMS build procedure for the just-released netCDF 2.3
package.  The C preprocessor macro SWAP must be defined when building the
implementation -- but it isn't.  As a consequence, bytes from multi-byte
variables are written to netCDF files in the wrong order.  You can see this
by dumping the first block of a netCDF file created by the new release:

    $ dump/byte/block=end:1 test.cdf
    Dump of file TEST.CDF;1 on  4-MAY-1993 15:24:17.41
    File ID (4616,14,0)   End of file block 15 / Allocated 15

    Virtual block number 1 (00000001), 512 (0200) bytes

     00 00 00 03 00 00 00 0A 00 00 00 08 43 44 46 01 .FDC............ 000000
    ...

The initial sequence of characters should be `CDF.' rather than `.FCD'
(this sequence is a `magic cookie' and appears in all valid netCDF files
created by our implementation of the netCDF specification).

The solution is to rebuild the package after adding the string
`/define=swap' to the definition of `ccc' in the file [.libsrc]make.com,
i.e. in the specified file, change

    $ ccc := cc /opt/nodebug/include=([-.xdr])/nolist/define=stdc_includes

to

    $ ccc := cc 
/opt/nodebug/include=([-.xdr])/nolist/define=stdc_includes/define=swap

I apologize for any inconvenience this might cause.

Regards,
Steve Emmerson


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