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

[netCDF #OSX-600877]: Error building netcdf C 4.3.2 with parallel IO

From your config.log, I see this:

configure:16585: mpicc -o conftest -g -O2 
-L/Users/dossa013/software/lib conftest.c -lhdf5  -lm -lnetcdf -lhdf5_hl -lhdf5 
-lz -ldl -lm >&5
Undefined symbols for architecture x86_64:
  "_SZ_BufftoBuffCompress", referenced from:
      _H5Z_filter_szip in libhdf5.a(H5Zszip.o)
  "_SZ_BufftoBuffDecompress", referenced from:
      _H5Z_filter_szip in libhdf5.a(H5Zszip.o)
  "_SZ_encoder_enabled", referenced from:
      _H5Z_init_interface in libhdf5.a(H5Z.o)
ld: symbol(s) not found for architecture x86_64

It looks like the HDF5 library is built with support for szip
compression, but you have not provided a location for where
libszip is to be found.  You should either rebuild the HDF5
library without szip support (netCDF doesn't need it by default)
or you should add the directory in which the szip library is
installed to LDFLAGS.


> I am trying to get the latest releases of netcdf C and fortran compiled
> with parallel IO to be able to run CESM on my Mac desktop (quadcore and
> 12GB with Yosemite).
> As a preparation for building netcdf, I have:
> 1) installed Xcode on my system;
> 2) installed f77, f90, c and cxx compilers using macports;
> 3) compiled udunits on my system;
> 4) compiled MPI from source explicitally pointing the above compilers when
> running configure, by using this command:
> ./configure CC=/opt/local/bin/gcc-mp-4.9 CXX=/opt/local/bin/c++-mp-4.9
> F77=/opt/local/bin/gfortran-mp-4.9 FC=/opt/local/bin/gfortran-mp-4.9
> --prefix=/Users/dossa013/software/cesm-software/mpich-3.1.3
> 5) compiled latest HDF5 (1.8.14) enabling zlib and parallel IO by using
> this command (did a make check and all tests PASSED):
> FC=mpif90 CC=mpicc ./configure
> --prefix=/Users/dossa013/software/cesm-software/hdf5-1.8.14
> --enable-parallel --with-zlib=/Users/dossa013/software
> --with-szlib=/Users/dossa013/software
> However, I failed to compile NetCDF 4.3.2  for C.  This is what I am trying:
> export FC="mpif90"
> export CC="mpicc"
> export CXX="mpicxx"
> export HDF5DIR="/Users/dossa013/software/cesm-software/hdf5-1.8.14"
> export ZLIBDIR="/Users/dossa013/software"
> export CPPFLAGS="-I${HDF5DIR}/include -I${ZLIBDIR}/include"
> export LDFLAGS="-L${HDF5DIR}/lib -L${ZLIBDIR}/lib"
> export LIBS="-lnetcdf -lhdf5_hl -lhdf5 -lz -ldl -lm"
> export LD_LIBRARY_PATH=${HDF5DIR}/lib
> ./configure --prefix=/Users/dossa013/software/cesm-software/netcdf
> --enable-parallel-tests LIBS="-lnetcdf -lhdf5_hl -lhdf5 -lz -ldl -lm"
> CPPFLAGS="-I/${H5DIR}/include -I${ZLIBDIR}/include"
> LDFLAGS="-L/${H5DIR}/lib -L${ZLIBDIR}/lib"
> Then configure starts well but at a certain point it throws out the
> following error message:
> configure: error: Can't find or link to the hdf5 library. Use
> --disable-netcdf-4, or see config.log for errors.
> Please see my config.log attached to this message. I took a look at it but
> I failed to find the reason why the script can't link the HDF5 libraries.
> Has anyone ever seen this? Is there any better way to show netcdf where my
> HDF5 libraries ae located?
> The environment variables I had on my session during the build attempt also
> are attached.
> Thank you in advance and happy hollidays!

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

Ticket Details
Ticket ID: OSX-600877
Department: Support netCDF
Priority: Normal
Status: Closed

NOTE: All email exchanges with Unidata User Support are recorded in the Unidata inquiry tracking system and then made publicly available through the web. If you do not want to have your interactions made available in this way, you must let us know in each email you send to us.