setup,  投稿記事

WSL2へのnetcdfインストール

WSL2に数値計算系で必須のnetcdfをインストールする際に,かなり楽な方法が紹介されていたので実施(https://estuarine.jp/2020/05/ubuntu-intel-netcdf/).

まずは以下の手順でHDF5とGNU版のnetcdf-4をinstall

$ sudo apt update
$ sudo apt install hdf5-tools hdf5-helpers libhdf5-dev libhdf5-doc libhdf5-serial-dev
$ sudo apt install libnetcdf-dev

どうやらintel版は個別でやる必要があるみたい

この時点で正常にできていれば

$ nc-config –all

で表示される.

続いてnetcdf-fortranをIntelでビルドする.

ここでは以下の内容をシェルスクリプトにして用意すると楽(内容は引用元を参照)

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.#.# --enable-large-file-tests --with-pic

できあがったconfig-intel.shを実行し

$ ./config-intel.sh
$ make
$ make check
$ sudo make install

と実行.

うまくいけばsuccessfullyのメッセージが表示される.

~/.bashrcには以下の内容をコピー.

export PATH=”/usr/local/netcdf-ifort/4.6.0/bin:$PATH”
export LD_LIBRARY_PATH=”/usr/local/netcdf-ifort/4.6.0/lib:$LD_LIBRARY_PATH”

今回は4.6.0をインストールしたのでそのように記述.

###追記###

その後のプログラムのコンパイル場面で

ld: -hdf5, -hdf5_hl,がみつからないというエラーが発生

調べてみると/usr/lib/x86_64-linux-gnuにてシンボリックリンクを貼る必要があるらしい

$ sudo ln -s libhdf5_serial.so.#.# libhdf5.so
$ sudo ln -s libhdf5_serial_hl.so.#.#.# libhdf5_hl.so

で対応した.

以下のサイトを参考にしました  
https://qiita.com/siida36/items/1787a4b83826261c88ec

WSL2へのnetcdfインストール はコメントを受け付けていません