[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[netCDF #QBM-450894]: Re: requesting netcdf support - ifort 32 bit installation is failing



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