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.
>From: Rob Folkert <address@hidden> >Subject: netcdf-3.3.1 >Organization: NCAR/CGD >Keywords: 199711242310.QAA25664 decoders netCDF > > - -1-my system is uname -a > IRIX64 winterpark 6.2 03131016 IP25 > > - -2- VERSION > 3.3.1 > Making `test' in directory /fs/cgd/home0/folkert/netcdf-3.3.1/src/libsrc > > c89 -c -O -I. -DNDEBUG t_nc.c > ar cru libnetcdf.a attr.o dim.o error.o libvers.o nc.o ncio.o ncx.o putget.o string.o v1hpg.o v2i.o var.o > : libnetcdf.a > c89 -o t_nc -O t_nc.o -L. -lnetcdf > ./t_nc > *** Error code 13 (bu21) > *** Error code 1 (bu21) > *** Error code 1 (bu21) Rob, This is a known bug, first reported by Ethan Alpert. It appears on IRIX 6 when the build directory in NFS mounted. It is in our 'support email archive', but has not yet appeared on the 'known bugs' web page. (Sorry.) Attached find a patch to src/libsrc/posixio.c. Alternatively, you can grab the lastest code from ftp://ftp.unidata.ucar.edu/pub/netcdf/netcdf-3.4atd.tar. This is not fully released because we are still testing it on 'exotic' platforms like NEC SX4. It works fine on my 6.2 SGI and has the patch already applied, along with other improvements. -glenn
Index: posixio.c =================================================================== RCS file: /upc/share/CVS/netcdf-3/libsrc/posixio.c,v retrieving revision 1.59 retrieving revision 1.58 diff -c -r1.59 -r1.58 *** posixio.c 1997/09/23 18:55:19 1.59 --- posixio.c 1997/07/19 22:14:21 1.58 *************** *** 2,8 **** * Copyright 1996, University Corporation for Atmospheric Research * See netcdf/COPYRIGHT file for copying and redistribution conditions. */ ! /* $Id: posixio.c,v 1.59 1997/09/23 18:55:19 davis Exp $ */ #include "ncconfig.h" #include <assert.h> --- 2,8 ---- * Copyright 1996, University Corporation for Atmospheric Research * See netcdf/COPYRIGHT file for copying and redistribution conditions. */ ! /* $Id: posixio.c,v 1.58 1997/07/19 22:14:21 davis Exp $ */ #include "ncconfig.h" #include <assert.h> *************** *** 738,751 **** #define NCIO_MINBLOCKSIZE 256 #define NCIO_MAXBLOCKSIZE 268435456 /* sanity check, about X_SIZE_T_MAX/8 */ - #ifdef S_IRUSR - #define NC_DEFAULT_CREAT_MODE \ - (S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH) /* 0666 */ - - #else - #define NC_DEFAULT_CREAT_MODE 0666 - #endif - int ncio_create(const char *path, int ioflags, size_t initialsz, --- 738,743 ---- *************** *** 753,759 **** ncio **nciopp, void **const igetvpp) { ncio *nciop; ! int oflags = (O_RDWR|O_CREAT); int fd; int status; --- 745,751 ---- ncio **nciopp, void **const igetvpp) { ncio *nciop; ! int oflags = (O_RDWR|O_CREAT|O_TRUNC); int fd; int status; *************** *** 771,786 **** if(fIsSet(ioflags, NC_NOCLOBBER)) fSet(oflags, O_EXCL); - else - fSet(oflags, O_TRUNC); #ifdef O_BINARY fSet(oflags, O_BINARY); #endif #ifdef vms ! fd = open(path, oflags, NC_DEFAULT_CREAT_MODE, "ctx=stm"); #else /* Should we mess with the mode based on NC_SHARE ?? */ ! fd = open(path, oflags, NC_DEFAULT_CREAT_MODE); #endif #if 0 (void) fprintf(stderr, "ncio_create(): path=\"%s\"\n", path); --- 763,776 ---- if(fIsSet(ioflags, NC_NOCLOBBER)) fSet(oflags, O_EXCL); #ifdef O_BINARY fSet(oflags, O_BINARY); #endif #ifdef vms ! fd = open(path, oflags, 0666, "ctx=stm"); #else /* Should we mess with the mode based on NC_SHARE ?? */ ! fd = open(path, oflags, 0666); #endif #if 0 (void) fprintf(stderr, "ncio_create(): path=\"%s\"\n", path);