NetCDF4-Cはapt installを使ってインストールできるので,その時のメモです.
ほぼこのページに従えばOKです.
各種ライブラリのインストール
ここで,HDF5とNetCDF-Cなどのライブラリもaptで入れてしまいます.
sudo apt update
sudo apt install hdf5-tools hdf5-helpers libhdf5-dev libhdf5-doc libhdf5-serial-dev
sudo apt install libnetcdf-dev
NetCDF-Fortranのインストール
NetCDF-Fortranはソースからビルドが必要です.ここからソースをDLしましょう.
homeディレクトリにいることを想定してコマンドを実行しています.
mkdir downloads
cd downloads
wget https://downloads.unidata.ucar.edu/netcdf-fortran/4.6.0/netcdf-fortran-4.6.0.tar.gz
tar xzf netcdf-fortran-4.6.0.tar.gz
cd netcdf-fortran-4.6.0/
netcdf-fortran-x.x.xのディレクトリに移動したら,configure用のスクリプト(config-intel.sh)を作成します.
export CDFROOT="/usr"
export LD_LIBRARY_PATH="${CDFROOT}/lib:${LD_LIBRARY_PATH}"
export LDFLAGS="-L${CDFROOT}/lib -I${CDFROOT}/include":
export OPTIM="-O3 -mcmodel=large -fPIC ${LDFLAGS}"
#
export CC=icc
export CXX=icpc
export FC=ifort
export F77=ifort
export F90=ifort
export CPP='icc -E -mcmodel=large'
export CXXCPP='icpc -E -mcmodel=large'
export CPPFLAGS="-DNDEBUG -DpgiFortran ${LDFLAGS}"
#
export CFLAGS=" ${OPTIM}"
export CXXFLAGS=" ${OPTIM}"
export FCFLAGS=" ${OPTIM}"
export F77FLAGS=" ${OPTIM}"
export F90FLAGS=" ${OPTIM}"
#
./configure --prefix=/usr/local/netcdf-ifort/4.6.0 --enable-large-file-tests --with-pic # 4.6.0の部分だけ自分のversionに合わせて変更
あとは,config-intel.shを実行したのちに,makeをします.
chmod 755 config-intel.sh
./config-intel.sh
make
make check
sudo make install
インストールが終わったら,忘れずにPATH追加
homeディレクトリにある.bashrcに以下を追記します.
export PATH="/usr/local/netcdf-ifort/4.5.2/bin:$PATH"
export LD_LIBRARY_PATH="/usr/local/netcdf-ifort/4.5.2/lib:$LD_LIBRARY_PATH"
インストールができているかをチェックします.
nf-config --all
↑を実行して,以下が出ればOK
This netCDF-Fortran 4.6.0 has been built with the following features:
--cc -> icc
--cflags -> -I/usr/local/netcdf-ifort/4.6.0/include -DNDEBUG -DpgiFortran -L/usr/lib -I/usr/include:
--fc -> ifort
--fflags -> -I/usr/local/netcdf-ifort/4.6.0/include -I/usr/local/netcdf-ifort/4.6.0/include
--flibs -> -L/usr/local/netcdf-ifort/4.6.0/lib -lnetcdff -L/usr/lib -I/usr/include: -lnetcdf -lnetcdf -lm
--has-f90 ->
--has-f03 -> yes
--has-nc2 -> yes
--has-nc4 -> yes
--prefix -> /usr/local/netcdf-ifort/4.6.0
--includedir-> /usr/local/netcdf-ifort/4.6.0/include
--version -> netCDF-Fortran 4.6.0
参考
- https://estuarine.jp/2020/05/ubuntu-intel-netcdf/ (ほぼこれを見ればOKです.NetCDF-Fortranのversionが違うので注意)