Dear all,
Thank you everyone for your messages. I learned a lot from each of them.
I managed to compile netcdf with parallel IO. This is what I did:
a) first, I abandoned netcdf 4.1.3 and decided to compile the updated C and
Fortran versions;
b) then, I realized (thanks Russ) that I compiled HDF5 with both szip and
zlib libraries, but I was linking just zlib when building netcdf. I rebuilt
HDF5 with zlib only and it worked.
c) This was tricky: netCDF-C 4.3.2 uses HDF function "h5pset_fapl_mpiposix",
which has been removed since HDF 1.8.13. Therefore, one should either use
netCDF4.3.2 with an older HDF5 (1.8.12) or use the latest HDF5 (1.8.14) in
conjunction with netCDF-C 4.3.3rc2, which at the time of writing (Dec/14)
is availabe only from github: https://github.com/Unidata/netcdf-c/releases
Regards,
Thiago.
On Mon, Dec 22, 2014 at 4:51 PM, Thiago V. dos Santos <dossa013@xxxxxxx>
wrote:
> Hi all,
>
> I am trying to get netcdf 4.1.3 with parallel IO compiled to be able to
> run CESM on my Mac desktop (quadcore and 12GB).
>
> 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 am having a really hard time trying to compile NetCDF 4.1.3.
> This is what I am trying:
>
> H5DIR=/Users/dossa013/software/cesm-software/hdf5-1.8.14
> CPPFLAGS="–I${H5DIR}/include"
> CXXFLAGS="-I${H5DIR}include"
> FFFLAGS="-I${H5DIR}/include"
> FCFLAGS="-I${H5DIR}/include"
> LDFLAGS="-L${H5DIR}/lib"
>
> ./configure FC=mpif90 CC=mpicc CXX=mpicxx
> --prefix=/Users/dossa013/software/cesm-software/netcdf-4.1.3
> --enable-netcdf4 --enable-parallel --disable-shared
> --with-udunits=/Users/dossa013/software
> --with-zlib=/Users/dossa013/software --with-szlib=/Users/dossa013/software
>
> Then everything seems to work ok but at a certain point it throws out this
> error message:
>
> checking for library containing H5Fflush... no
>
> configure: error: Can't find or link to the hdf5 library. Use
> --disable-netcdf-4, or see config.log for errors.
>
>
> I took a look at the config.log file, but I failed to find the reason why
> the script stopped. Has anyone ever seen this? Is there any better way to
> show netcdf where my HDF5 libraries ae located?
>
>
> Thank you all in advance and happy hollidays!
>
> --
> *Thiago Veloso dos Santos*
> *PhD student*
> *Land and Atmospheric Science*
> *University of Minnesota*
>
> *http://www.laas.umn.edu/CurrentStudents/MeettheStudents/ThiagodosSantos/index.htm
> <http://www.laas.umn.edu/CurrentStudents/MeettheStudents/ThiagodosSantos/index.htm>*
>
--
*Thiago Veloso dos Santos*
*PhD student*
*Land and Atmospheric Science*
*University of Minnesota*
*http://www.laas.umn.edu/CurrentStudents/MeettheStudents/ThiagodosSantos/index.htm
<http://www.laas.umn.edu/CurrentStudents/MeettheStudents/ThiagodosSantos/index.htm>*