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.
Donald, > To: address@hidden > From: Donald Britton <address@hidden> > Organization: NOAA > Keywords: 199809140436.WAA27519 In the above message, you wrote: > I have successfully installed netCDF-3.4 on one of our hps, running > hp-ux 10.20. We are also using perl 5.003. When trying to install > the netCDFPerl package I get the following error: > > # make > > making `dynamic' in directory /usr/local/netcdf-perl-1.2/src/perl > > cc -c -I/usr/local/netcdf-3.4/include -D_HPUX_SOURCE -O > -DVERSION=\"1.2\" -DXS_VERSION=\"1.2\" > -I/opt/perl-5.003/lib/PA-RISC1.1/5.003/CORE NetCDF.c > cc: "/usr/local/netcdf-3.4/include/netcdf.h", line 195: error 1000: > Unexpected symbol: "size_t". > cc: "/usr/local/netcdf-3.4/include/netcdf.h", line 196: error 1000: > Unexpected symbol: "*". > . > . > . > . > etc. > > I don't know what to make of this. The stddef.h library is available > in the /usr/include directory. And the file that's being compiled (perl/NetCDF.xs) includes the header-file <stdlib.h> before including the header-file "netcdf.h", in which the error occurs. <stdlib.h> is required by the C Standard to define the type "size_t". It looks like HP goofed on this one. I would try modifying the file "perl/NetCDF.xs" -- changing the "#include" statements and/or adding macro definitions -- until it worked. Look at <stdlib.h>, see what, if any, macro needs to be defined in order for that header-file to define the type "size_t" -- then define that macro in "perl/NetCDF.xs". -------- Steve Emmerson <http://www.unidata.ucar.edu>