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.
Graham, >Date: Wed, 02 Jun 1999 18:49:13 +0000 >From: Graham Campbell <address@hidden> >Organization: Brookhaven National Laboratory >To: Steve Emmerson <address@hidden> >Subject: Re: 19990601: netcdf "make test" failure under Red Hat Linux 2.2.5 >Keywords: 199905282013.OAA17107 In the above message, you wrote: > This is a multi-part message in MIME format. > --------------C4FFF63C40E7C8908E77CD02 > Content-Type: text/plain; charset=us-ascii > Content-Transfer-Encoding: 7bit > > Here is output from running t_nc under gdb: > > (gdb) run > Starting program: /home/gc/netcdf-linux/netcdf-3.4/src/libsrc/./t_nc > > Program received signal SIGSEGV, Segmentation fault. > 0x804f067 in nc_def_dim (ncid=6, name=0x2 <Address 0x2 out of bounds>, > size=134714472, > dimidp=0x8079478) at dim.c:307 > 307 { > (gdb) where > #0 0x804f067 in nc_def_dim (ncid=6, name=0x2 <Address 0x2 out of > bounds>, size=134714472, > dimidp=0x8079478) at dim.c:307 > #1 0x8048ced in createtestdims (cdfid=6, num_dims=2, sizes=0x8079468, > dim_names=0x8079478) > at t_nc.c:116 > #2 0x80495b8 in main (ac=1, av=0xbffffa04) at t_nc.c:384 > #3 0x40031cb3 in __libc_start_main (main=0x8049394 <main>, argc=1, > argv=0xbffffa04, > init=0x80487fc <_init>, fini=0x80741ec <_fini>, rtld_fini=0x4000a350 > <_dl_fini>, > stack_end=0xbffff9fc) at ../sysdeps/generic/libc-start.c:78 > (gdb) Bizarre. I don't see how the "name" and "size" arguments to nc_def_dim() could be incorrect -- especialy on your system where the size of a "size_t" is the same size as that of an "int" or "long" (4 bytes). It only makes sense if the compiler misinterprets the meaning of declarations like "char *foo[]". As a consequence, I'm beginning to think the impossible and suspect your C compiler. What is the version of your C compiler, e.g. /usr/bin/cc --version Do you have the "egcs" compiler available? If so, what's its version, e.g. /usr/bin/egcs --version -------- Steve Emmerson <http://www.unidata.ucar.edu>