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.
Jim, >Date: Fri, 20 Feb 1998 07:16:41 -0600 >From: address@hidden (Jim Hines (awdnsun) 472-6708) >Organization: . >To: address@hidden >Subject: Re: 980219: netcdf-3.3: parameters not in identifier list >Keywords: 199802191738.KAA02626 In the above message, you wrote: > /data/programs/netcdf/netcdf-3.3.1/src/fortran> more s_out > cc -E -I../libsrc -DNDEBUG fort-attio.c >fort-attio.i > /data/programs/netcdf/netcdf-3.3.1/src/fortran> more s_err > /data/programs/netcdf/netcdf-3.3.1/src/fortran> > /data/programs/netcdf/netcdf-3.3.1/src/fortran> more st_out > extern int nf_put_att_text_ ( A1 , A2 , A3 , A4 , A5 > , C3 , C5 ) int * fncid ; int * fvarid ; char * A3 ; int * A4 ; > char * A5 ; unsigned C3 ; unsigned C5 ; { > char * B3 = 0 ; char * B5 = 0 ; int A0 ; A0 = nc_put_att_text ( * > fncid , ( * fvarid - 1 ) , ( ! ( C3 < 4 || A3 [ 0 ] || A3 [ 1 ] || A3 [ 2 ] > || A3 [ 3 ] ) ) ? 0 : memchr ( A3 , '\0' , C3 ) ? A3 : ( ( B3 = ( char * ) > malloc ( C3 + 1 ) ) [ C3 ] = '\0' , memcpy ( B3 , A3 , C3 ) , kill_trailing ( > B3 , ' ' ) ) , * A4 , A5 ) ; if ( B3 ) free ( B3 ) ; if > ( B5 ) free ( B5 ) ; return A0 ; } It appears from the above that the Fortran-calling-C interface doesn't understand that Standard C is being used. I suggest the following: 1. Go to the top-level source directory. 2. Execute the command "make distclean". 3. Remove the file "config.cache" if it exists. 4. Set your environment variables as before but set CC according to the following: CC=/opt/SUNWspro/bin/c89 This should result in the Standard C compiler being used. 5. Re-execute the configure script. Redirect standard output and standard error to the file "configure.log". If something goes wrong (as noted by an error message in "configure.log") then stop and send me "configure.log". 6. Execute the command "make". Redirect standard output and standard error to the file "make.log". If something goes wrong, then stop and send me "make.log" and "configure.log". 7. Execute the command "make test". Redirect standard output and standard error to the file "test.log". If something goes wrong, then stop and send me "test.log", "make.log" and "configure.log". 8. Execute the command "make install". Redirect standard output and standard error to the file "install.log". If something goes wrong, then stop and send me "install.log", "test.log", "make.log" and "configure.log". 9. Execute the command "make clean". Please let me know if this helps. -------- Steve Emmerson <http://www.unidata.ucar.edu>