本指南的目的在于实现netcdf4在个人PC或是服务器上的安装,主要实现功能是netcdf4中的数据压缩(Compression)功能,若需要其他功能,请参阅官方指南:Getting and Building netCDF。
一、所需安装包
实现Data Compression所必须的安装包只有四个
- HDF5 1.8.9 or later (for netCDF-4 support)
- zlib 1.2.5 or later (for netCDF-4 compression)
- netcdfc (latest version)
- netcdf-fortran (latest version)
另:非必装:curl 7.18.0 or later (for DAP remote access client support)
二、安装步骤
注意:编译器的选择,在
/.configure
中需要进行相关配置,也可在其之前就进行配置。在本次安装过程中,所需的C编译器和fortran编译器分别为intel
的icc
和ifort
。
0、编译器设置
$ export CC=icc
$ export CXX=icpc
$ export CFLAGS='-O3 -xHost -ip -no-prec-div -static-intel'
$ export CXXFLAGS='-O3 -xHost -ip -no-prec-div -static-intel'
$ export F77=ifort
$ export FC=ifort
$ export F90=ifort
$ export FFLAGS='-O3 -xHost -ip -no-prec-div -static-intel'
$ export CPP='icc -E'
$ export CXXCPP='icpc -E'
1、zlib安装
$ ZDIR=/home/gaoxiao/software/zlib #安装文件夹
$ mkdir ${ZDIR}
$ ./configure --prefix=${ZDIR}
$ make check
$ make install
2、安装hdf5
$ H5DIR=/home/gaoxiao/software/hdf5
$ mkdir ${H5DIR}
$ ./configure --with-zlib=${ZDIR} --prefix=${H5DIR} -enable-fortran -enable-cxx
$ make check
$ make install
注意:
- 必须要有
--with-zlib=${ZDIR}
,否则会报错相关库文件找不到。 - 在个人PC机上安装时,可能会提示C++的注释方式不可用于IS90规范中,遇此错误,目前的解决方法是找到相关文件,将C++的注释方式
//
改为C的注释方式/* */
,目前已知安装过程中有两个文件共两处需要修改。 - HDF5相关配置选项
3、安装Netcdfc
$NCDIR=/home/gaoxiao/software/netcdfc
$mkdir ${NCDIR}
$CPPFLAGS=-I${H5DIR}/include LDFLAGS=-L${H5DIR}/lib ./configure --prefix=${NCDIR} --enable-netcdf-4 --enable-largefile --disable-dap
$make check
$make install
注意:
- 目前服务器上安装的netcdf4,在配置时选择了
--disable-netcdf4
,如此安装不需要以上的0,1,2步骤,可以直接安装,导致的结果是无法使用netcdf4中的一些新特性如Compression等功能; - 必须包含
CPPFLAGS=-I${H5DIR}/include LDFLAGS=-L${H5DIR}/lib
,否则报错提示相关文件找不到; - Netcdfc相关配置选项(网页中部位置)
4、Netcdf-fortran安装
$NFDIR=/home/gaoxiao/software/netcdf_fortran
$mkdir ${NFDIR}
$export CPPFLAGS="-I/home/gaoxiao/software/szip/include -I/home/gaoxiao/software/zlib/include -I/gaoxiao/software/hdf5/include -I/home/gaoxiao/software/netcdfc/include"
$export LDFLAGS="-L/home/gaoxiao/software/szip/lib -L/home/gaoxiao/software/zlib/lib -L/home/gaoxiao/software/hdf5/lib -L/home/gaoxiao/software/netcdfc/lib"
$export LD_LIBRARY_PATH=${NCDIR}/lib:${LD_LIBRARY_PATH}
$CPPFLAGS=-I${NCDIR}/include LDFLAGS=-L${NCDIR}/lib ./configure --prefix=${NFDIR} --disable-fortran-type-check
$make check
$make install
三、安装结果
可以通过nc-config --all
查看所安装的netcdf的状态
注意:不同配置选项最终结果可能不一样。
Reference:
Part A:文档查阅
1、Netcdf Official Site
2、Netcdf Download Site
3、Netcdf Documentation
4、2011 Unidata NetCDF Workshop
5、2012 Unidata NetCDF Workshop
6、NetCDF Fortran 90 Interface Guide
7、WELCOME to the HDF5 Home Page
Part B:安装参考
1、Getting and Building netCDF
2、在CentOS上安裝netCDF4流程
3、Linux下用Intel编译器编译安装NetCDF-Fortan库(4.2以后版本)
4、netcdf安装 、zlib 、szip、hdf5、mpich2、curl系列软件安装