Unidata - To provide the data services, tools, and cyberinfrastructure leadership that advance Earth system science, enhance educational opportunities, and broaden participation. Unidata
         
  advanced  
 

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


 
 
  Contact Us     Site Map     Search     Terms and Conditions     Privacy Policy     Participation Policy
 
National Science Foundation (NSF) UCAR Community Programs   Unidata is a member of the UCAR Community Programs, is managed by the University Corporation for Atmospheric Research, and is sponsored by the National Science Foundation.
P.O. Box 3000     Boulder, CO 80307-3000 USA     Tel: 303-497-8643     Fax: 303-497-8690