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: Mike Dixon <address@hidden> >Organization: NCAR/RAP >Keywords: 200303051637.h25GbC315003 netCDF g++ 3.2 Mike, Once again I have to apologize for the tardiness of this reply. >Thanks for getting back to me. Attached is the configure log. I just checked through the online netCDF support archives: http://www.unidata.ucar.edu/glimpsedocs/ghnetcdf.html and found (using g++ as the search key) the following snippit from another user about using g++ 3.5.1: http://www.unidata.ucar.edu/glimpsedocs/ghnetcdf.html > From: Hein Zelle <address@hidden> > I had to modify the configure script to accept and detect my g++ > compiler: it found an error trying to compile the test program. In the > test program > > #line 1230 "configure" > #include "confdefs.h" > //#ifdef __cplusplus > //extern "C" void exit(int); > //#endif > > #include <iostream.h> > int main() { > cout << ""; > return 0; > } > > I had to comment out the line "extern "C" void exit(int);", because > g++ was complaining about a different kind of exception being thrown > by in the declaration and implementation of exit(). Without that line > it worked fine, but it may be better to actually fix the code. Why is > that line included anyway? Russ Rew commented: Good question. It's unfortunately generated automatically by the old version of autoconf we used to generate the configure script from a "configure.in" file. Before releasing this version, I would like to update it to use the current autoconf/automake/libtool packages, so we don't have problems like this. So, it looks like you were correct in your comment that 'configure' should be modified to correctly test g++ 3.2.2. Until we do that, you will need to do the same sort of thing that Hein Zelle did: comment out the line "extern "C" void exit(int);" Tom -- config.log -- >-------------------------------------------------------------- > >This file contains any messages produced by compilers while >running configure, to aid debugging if configure makes a mistake. > >configure:928: checking for top-level source-directory >configure:938: checking for m4 preprocessor >configure:945: checking for m4 >configure:1012: checking m4 flags >configure:1085: checking C compiler "/usr/local/gcc-3.2.2/bin/gcc" >configure:1094: /usr/local/gcc-3.2.2/bin/gcc -c -O -DNDEBUG conftest.c 1>&5 >configure:1121: checking how to make dependencies >configure:1189: checking for /usr/local/gcc-3.2.2/bin/g++ >configure:1225: checking C++ compiler "/usr/local/gcc-3.2.2/bin/g++" >configure:1243: /usr/local/gcc-3.2.2/bin/g++ -o conftest -DNDEBUG conftest.C > 1>&5 >configure: failed program was: >#line 1230 "configure" >#include "confdefs.h" >#ifdef __cplusplus >//extern "C" void exit(int); >#endif > > #include <iostream> > int main() { > std::cout << ""; > return 0; > } > >configure:1294: checking how to run the C preprocessor >configure:1475: checking for f77 >configure:1516: f77 -c conftest.f >configure:1548: checking for Fortran .F compiler >configure:1558: checking if Fortran-77 compiler handles *.F files >configure:1569: f77 -o conftest conftest.F >configure:1638: checking "f77" as Fortran-90 compiler >configure:1640: f77 -o conftest conftest.f90 >/usr/bin/ld:conftest.f90: file format not recognized; treating as linker scrip > t >/usr/bin/ld:conftest.f90:1: parse error >collect2: ld returned 1 exit status >configure:1669: checking for xlf90 >configure:1669: checking for f90 >configure:1740: checking for nm utility >configure:1747: checking for nm >configure:1814: checking nm flags >configure:1830: checking for C-equivalent to Fortran routine "SUB" >configure:1836: f77 -c conftest.f >configure:1865: checking for Fortran "byte" >configure:1872: f77 -c conftest.f >configure:1889: checking for Fortran "integer*2" >configure:1896: f77 -c conftest.f >configure:1922: checking if Fortran "byte" is C "signed char" >configure:1931: /usr/local/gcc-3.2.2/bin/gcc -c -DNDEBUG -O conftest.c >configure:1933: f77 -c conftestf.f >configure:1935: f77 -o conftest conftestf.o conftest.o >configure:1937: ./conftest >configure:1970: checking if Fortran "byte" is C "short" >configure:1979: /usr/local/gcc-3.2.2/bin/gcc -c -DNDEBUG -O conftest.c >configure:1981: f77 -c conftestf.f >configure:1983: f77 -o conftest conftestf.o conftest.o >configure:1985: ./conftest >configure:2018: checking if Fortran "byte" is C "int" >configure:2027: /usr/local/gcc-3.2.2/bin/gcc -c -DNDEBUG -O conftest.c >configure:2029: f77 -c conftestf.f >configure:2031: f77 -o conftest conftestf.o conftest.o >configure:2033: ./conftest >configure:2066: checking if Fortran "byte" is C "long" >configure:2075: /usr/local/gcc-3.2.2/bin/gcc -c -DNDEBUG -O conftest.c >configure:2077: f77 -c conftestf.f >configure:2079: f77 -o conftest conftestf.o conftest.o >configure:2081: ./conftest >configure:2118: checking if Fortran "integer*2" is C "short" >configure:2127: /usr/local/gcc-3.2.2/bin/gcc -c -DNDEBUG -O conftest.c >configure:2129: f77 -c conftestf.f >configure:2131: f77 -o conftest conftestf.o conftest.o >configure:2133: ./conftest >configure:2166: checking if Fortran "integer*2" is C "int" >configure:2175: /usr/local/gcc-3.2.2/bin/gcc -c -DNDEBUG -O conftest.c >configure:2177: f77 -c conftestf.f >configure:2179: f77 -o conftest conftestf.o conftest.o >configure:2181: ./conftest >configure:2214: checking if Fortran "integer*2" is C "long" >configure:2223: /usr/local/gcc-3.2.2/bin/gcc -c -DNDEBUG -O conftest.c >configure:2225: f77 -c conftestf.f >configure:2227: f77 -o conftest conftestf.o conftest.o >configure:2229: ./conftest >configure:2264: checking if Fortran "integer" is C "int" >configure:2273: /usr/local/gcc-3.2.2/bin/gcc -c -DNDEBUG -O conftest.c >configure:2275: f77 -c conftestf.f >configure:2277: f77 -o conftest conftestf.o conftest.o >configure:2279: ./conftest >configure:2312: checking if Fortran "real" is C "float" >configure:2321: /usr/local/gcc-3.2.2/bin/gcc -c -DNDEBUG -O conftest.c >configure:2323: f77 -c conftestf.f >configure:2325: f77 -o conftest conftestf.o conftest.o >configure:2327: ./conftest >configure:2360: checking if Fortran "doubleprecision" is C "double" >configure:2369: /usr/local/gcc-3.2.2/bin/gcc -c -DNDEBUG -O conftest.c >configure:2371: f77 -c conftestf.f >configure:2373: f77 -o conftest conftestf.o conftest.o >configure:2375: ./conftest >configure:2402: checking for Fortran-equivalent to netCDF "byte" >configure:2409: f77 -c conftest.f >configure:2424: checking for Fortran-equivalent to netCDF "short" >configure:2431: f77 -c conftest.f >configure:2451: checking for math library >configure:2455: checking for tanh in -lc >configure:2493: checking for tanh in -lm >configure:2544: checking for ar utility >configure:2551: checking for ar >configure:2618: checking ar flags >configure:2627: checking for nm utility >configure:2669: checking for nm >configure:2701: checking nm flags >configure:2711: checking for ranlib >configure:2740: checking for stdlib.h >configure:2777: checking for sys/types.h >configure:2813: checking for strerror >configure:2866: checking for working ftruncate() >configure:2919: /usr/local/gcc-3.2.2/bin/gcc -o conftest -O -DNDEBUG conftest > .c 1>&5 >/tmp/cc8WNdlS.o: In function `main': >/tmp/cc8WNdlS.o(.text+0x1d): the use of `tmpnam' is dangerous, better use `mks > temp' >configure:2941: checking for working alloca.h >configure:2974: checking for alloca >configure:3173: checking for st_blksize in struct stat >configure:3208: checking for IEEE floating point format >configure:3246: /usr/local/gcc-3.2.2/bin/gcc -o conftest -O -DNDEBUG conftest > .c 1>&5 >configure:3267: checking for ANSI C header files >configure:3371: checking for size_t >configure:3404: checking for off_t >configure:3437: checking for ssize_t >configure:3470: checking for ptrdiff_t >configure:3503: checking for uchar >configure:3536: checking whether char is unsigned >configure:3599: checking whether byte ordering is bigendian >configure:3689: checking size of short >configure:3728: checking size of int >configure:3767: checking size of long >configure:3806: checking size of float >configure:3845: checking size of double >configure:3884: checking size of off_t >configure:3927: checking size of size_t >configure:4051: checking for manual-page index command >configure:4055: checking binary distribution directory > >From address@hidden Fri Mar 14 15:02:34 2003 >Subject: Re: 20030308: using g++ 3.2 to build netCDF (cont.) Hi Tom Thanks for the feedback. Mike