This archive contains answers to questions sent to Unidata support through mid-2025. Note that the archive is no longer being updated. We provide the archive for reference; many of the answers presented here remain technically correct, even if somewhat outdated. For the most up-to-date information on the use of NSF Unidata software and data services, please consult the Software Documentation first.
Unidata Support <address@hidden> writes: > ------- Forwarded Message > >>To: address@hidden >>From: Bob Haxo <address@hidden> >>Subject: netCDF - FLAGS and NC_FILL_BYTE >>Organization: Carnegie Institution of Washington >>Keywords: 200512030013.jB30D87s018006 netCDF x86_64 cross compile > > Greetings ... > > I'm compiling on a x86_64 system, and that requires FLAGS for cross compiling > in 32-bit mode. > > Documentation for environment variables states ... > > F90FLAGS Fortran 90 compiler flags "-O" or "-g", for example. If > you don't > specify this, the value of FFLAGS will be used. > > This does not seem to be correct for the files in > /usr/local/netcdf-3.6.0-p1/src/f90. > > The Makefile in this directory includes ../macros.make which defines the > following: > > COMPILE.F90 = $(F90) -c $(F90FLAGS) > > With F90FLAGS undefined, the native x86_64 64-bit compile occurs. Sorry, I'm not quite following. You tried setting F90FLAGS and it didn't have the effect you expected? If that is the case, please send me the complete output from configure and make test. > > Also, there appears to be ambiguity in the code as to whether ncBad_Byte > should be a signed or unsigned char. > > "ncvalues.h", line 35: warning: integer conversion resulted in a change of > sign > static const ncbyte ncBad_byte = NC_FILL_BYTE; > > ncbyte is type unsigned but NC_FILL_BYTE is defined negative in another > include file. > Yikes. There is some ambiguity in the way that signed vs. unsigned bytes are handled in netCDF. I will pass this on to the netCDF fortran experts and see what they say about it... Thanks! Ed -- Ed Hartnett -- address@hidden