install-wrf-gnu

LinuxにWRFをインストール with GNU compiler ( 2014/04/19 編集 )

  • netcdfのインストール

    • WRFのコンパイル

***************************************************

前提:

・terminalでは、bashを使用する。

・$ マークはユーザー権限を示す。

・# マークはroot権限を示す。

***************************************************

以下で使用するShell script類はここからダウンロード出来ます。

動作確認済み環境:

OS: CentOS 5.8 (x86_64)

Memory: 24GB

CPU: Intel Xeon (Total 16 Cores)

Compiler: GNU

NetCDF: vers.3.6.3 compiled with gnu compiler

WRF: ver.3.1.1, 3.2.1, 3.3.1, 3.4.1, 3.5.1, 3.6

WPS: ver.3.1.1, 3.2.1, 3.3.1, 3.4.1, 3.5.1, 3.6

---

NetCDF 3.6.3 をインストール

$ emacs netcdf_install.sh

-- ここから下をファイルに保存する --

#!/bin/sh

export FC=gfortran

export F77=gfortran

export CC=gcc

export CXX=g++

export CPP='gcc -E'

export CXXCPP='gcc -E'

export CPPFLAGS='-DNDEBUG -DpgiFortran

./configure --prefix=/usr/local/netcdf-3.6.3-gnu

-- ファイルの記入はここまで --

$ sh netcdf_install.sh

$ make

$ make check

$ su

# make install

---

Jasper をインストール

$ emacs jasper_install.sh

-- ここから下をファイルに保存する --

#!/bin/sh

export CC=gcc

export FC=gfortran

./configure --prefix=/usr/local/jasper-1.701.0-gnu

-- ファイルの記入はここまで --

$ sh jasper_install.sh

$ make

$ make check

$ su

# make install

環境設定例:

# jasper-1.701.0

export JASPER="/usr/local/jasper-1.701.0-gnu"

export JASPERBIN="${JASPER}/bin"

export JASPERINC="${JASPER}/include"

export JASPERLIB="${JASPER}/lib"

---

mpich2 をインストール

$ emacs mpich_install.sh

-- ここから下をファイルに保存する --

#!/bin/sh

export CC=gcc

export CXX=g++

export CPP='gcc -E'

export CXXCPP='gcc -E'

export F77=gfortran

export FC=gfortran

./configure --prefix=/usr/local/mpich2-1.4.1p1-gnu --enable-debuginfo --with-shared --with-device=ch3:nemesis

-- ファイルの記入はここまで --

$ chmod 744 mpich_install.sh

$ make

$ make check

$ su

# make install

$ make testing

---

WRF ver. 3.1.1 をインストール

$ ./configure

12番、1番を順に選択。

$ ./compile em_real >& compile.log

注意:

WRF ver.3.5.1 をGNU コンパイラーで構築する場合、GNU コンパイラのバージョンが4.4 以上である必要がある。

どうやら、module_io_int_idx.f90 というプログラム内の文法がサポートされない形式になっている模様。

ver. 4.1.2 では構築できなかった。

以上。