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

[netCDF #KKZ-413713]: NETCDF-FORTRAN nf_test FAILS



Hi Rekha,

> I am again seeking your help. I am trying to install netcdf-fortran using 
> mpiifort.netcdf-C installed successfully. But I am unable to solve the issue 
> of nf_test withnetcdf-fortran. I have got the error all the times:
> util.o(.text+0x2bfb):ccn9ixp3.f: undefined reference to `max_short_'
> util.o(.text+0x2c0f):ccn9ixp3.f: undefined reference to `max_int_'
> util.o(.text+0x2c23):ccn9ixp3.f: undefined reference to 
> `max_float_'util.o(.text+0x2c37):ccn9ixp3.f: undefined reference to 
> `max_double_'make[2]: *** [nf_test] Error 1

Those are not netCDF functions. Maybe they are supposed to be provided
in the Fortran run-time library. Similarly, the file ccn9ixp3.f is not part
of the netCDF software.

> I have set all the env varibles such as:
> CPPFLAGS=-DNDEBUG -DIFORT
> LD_LIBRARY_PATH=/usr/lib:/lib:/opt/intel/fc/libPATH=$PATH:/opt/intel/fc/bin

That looks wrong, unless it is a typo. /usr/lib and /lib are probably searched
by default, so don't need to be added to LD_LIBRARY_PATH.
Maybe what you want is should be:

  LD_LIBRARY_PATH=/opt/intel/fc/lib
  PATH=$PATH:/opt/intel/fc/bin

(if those directories exist and are where you have installed Intel Fortran).

Also, that merely defines shell variables, not environment variables.
To add them to the environment so they are inherited, they need to 
be exported, with something like

  export LD_LIBRARY_PATH 

or you can just set them on the command line before invoking a shell
script or program that needs them, in which case they will be set
temporarily while that script or program is run.

> F90=mpiifort
> CFLAGS=-O2 -g
> FC=mpiifort
> CC=mpiicc
> FFLAGS=-g -O2 -mp -auto But nothing helps.
> Kindly help me in this regards. I am seeing no way out.

Before trying to build netCDF-Fortran, maybe you should make
sure your mpiifort compiler works on a simple program that tries
to use some implicit Fortran functions, to be sure your paths are
set up correctly for mpiifort to find functions in the run-time library.

Also, if you are trying to do parallel I/O, make sure you pay attention 
to the special instructions regarding parallel I/O for building netCDF
Fortran here:

  For parallel I/O: The configure script sets CFLAGS appropriately for
  standard compilers, but if you are building with parallel I/O using
  wrappers such as mpicc and mpif90, you may have to set CFLAGS to
  indicate which Fortran compiler is wrapped by mpif90. For example,
  if "mpicc --show" and "mpif90 --show" indicate gcc and gfortran are
  being used, then set CFLAGS=-DgFortran, and similarly set
  CFLAGS=-DpgiFortran for Portland Group compilers.

which appears in the build instructions:

  
http://www.unidata.ucar.edu/netcdf/docs/building_netcdf_fortran.html#building_fortran_with_static_libraries

--Russ

Russ Rew                                         UCAR Unidata Program
address@hidden                      http://www.unidata.ucar.edu



Ticket Details
===================
Ticket ID: KKZ-413713
Department: Support netCDF
Priority: Normal
Status: Closed