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.
Steve, Sorry compiling a 32-bit library with ifort is proving so difficult. The output from our successful build with ifort 9.0 for a 32-bit development environment using the latest netCDF-3 development snapshot is here: http://www.unidata.ucar.edu/software/netcdf/builds/snapshot/imogene_Linux_netcdf-3.6.2-snapshot2007053101_2007-05-31-01-39.txt and it does not require setting CPPFLAGS or CFLAGS before building. Similarly, output from the version built from the 3.6.2 release with ifort did not require any special environment variable settings, although it used the --disable-f90 configure flag unfortunately, so didn't try to build the f90 interface: http://www.unidata.ucar.edu/software/netcdf/builds/3_6_2/imogene_Linux_netcdf-3.6.2_2007-03-05-10-44.txt The problem you point out is: > Making `test' in directory /usr/local/ifort/netcdf32/src/nf_test > > make[2]: Entering directory `/usr/local/ifort/netcdf32/src/nf_test' > + /opt/intel/fc/9.1/bin/ifort -c util.F > util.F(1170): #error: can't find include file: No C equivalent to > Fortran REAL but the invocation of ifort in the output from the successful snapshot build above is quite different: Making check in nf_test make[1]: Entering directory `/tmp/n3_imogene/netcdf-3.6.2-snapshot2007053101/nf_test' make nf_test tst_f77_v2 ftest tst_f90 make[2]: Entering directory `/tmp/n3_imogene/netcdf-3.6.2-snapshot2007053101/nf_test' ifort -DHAVE_CONFIG_H -I. -I. -I.. -I../fortran -I../fortran -I../libsrc -I../f90 -g -c -o test_get.o test_get.F ifort -DHAVE_CONFIG_H -I. -I. -I.. -I../fortran -I../fortran -I../libsrc -I../f90 -g -c -o test_put.o test_put.F ifort -DHAVE_CONFIG_H -I. -I. -I.. -I../fortran -I../fortran -I../libsrc -I../f90 -g -c -o nf_error.o nf_error.F ifort -DHAVE_CONFIG_H -I. -I. -I.. -I../fortran -I../fortran -I../libsrc -I../f90 -g -c -o nf_test.o nf_test.F ifort -DHAVE_CONFIG_H -I. -I. -I.. -I../fortran -I../fortran -I../libsrc -I../f90 -g -c -o test_read.o test_read.F ifort -DHAVE_CONFIG_H -I. -I. -I.. -I../fortran -I../fortran -I../libsrc -I../f90 -g -c -o test_write.o test_write.F ifort -DHAVE_CONFIG_H -I. -I. -I.. -I../fortran -I../fortran -I../libsrc -I../f90 -g -c -o util.o util.F Note the "-DHAVE_CONFIG_H", "-I.", "-I..", etc. include arguments on the compile lines. These are necessary to find the include file that has the util.F needs to find its definitions. I'm not sure why your build isn't using these, unless maybe you are trying this in a directory that has leftover files from a previous build attempt because you didn't run "make distclean" and rerun the "configure" script before "make check". If your 64-bit build worked, it surely must have invoked ifort with these extra arguments. If you can determine what you are doing differently for your 32-bit build attempts, perhaps that will be a clue. You may want to get the current development snapshot of netCDF-3 rather than the 3.6.2 version, if you want to try to duplicate the build given in the first link above, but note we only have access to ifort version 9.0, not 9.1, so that might make some difference ... --Russ Russ Rew UCAR Unidata Program address@hidden http://www.unidata.ucar.edu Ticket Details =================== Ticket ID: QBM-450894 Department: Support netCDF Priority: Normal Status: Closed