LoginSignup
1
2

More than 5 years have passed since last update.

WRF > CentOS6.8 > WRF3.6.1 setup: 失敗 / WRF3.7.1 setup: 成功 (-O2にすること) / WPS3.7.1 setup: 成功

Last updated at Posted at 2016-07-18
動作環境
CentOS 6.8 (64bit) インストール直後

WRF(Weather Research and Forecasting Model)のセットアップメモ。

参考 ( CentOS6.2 (64bit)でのインストール事例 )
http://linux-vi.blogspot.jp/2014/07/how-to-install-wrf-in-centos-62-64bit.html

以下、root権限で実行した。

1回目のrebootまで

yum install gcc-gfortran

(追加: ココカラ)
wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

rpm -ivh epel-release-6-8.noarch.rpm

(追加: ココマデ)

yum install netcdf netcdf-devel

yum install tcsh

  • Nothing to do

yum install ncl ncl-devel

yum install jasper-devel jasper-libs

yum install libpng libpng-devel

yum install redhat-lsb-graphics

reboot

2回目のrebootまで

yum install ncview

yum install m4

  • Nothing to do

yum install gv

yum install cloog-*

reboot

3回目のrebootまで

yum update gcc-gfortran netcdf tcsh ncl ncl-devel jasper-devel jasper-libs libpng-devel libpng

  • 上記成功していて、No Packages marked for Update となった

この段階で find / -name netcdf.incすると以下が見つかった。
/usr/include/netcdf.inc

export NETCDF=/usr

yum install msp430-gcc msp430-libc

  • なぜかここでMSP430のコンパイラ関連が登場
  • Error: Nothing to do
  • MSP430を使う必要はないと思うので、エラーでもいいだろう

yum install python-devel

yum install gcc gcc-c++ gcc-gfortran

yum install sed mawk

yum install grip

  • Error: Nothing to do
  • gripというのは使うかは不明

yum install grib_api

yum install wgrib
yum install wgrib2

yum install libXp libXp-devel

yum install libXtst libXtst-devel java-1.6.0-openjdk-devel java-1.6.0-openjdk

yum install compat-libgfortran-41

yum install java-1.5.0-gcj java-1.5.0-gcj-devel

yum install perl-Time-HiRes

< make sure the following libraries are exist at /usr >
find /usr -name libmawt.so
find /usr -name libXp.so.6
find /usr -name libgfortran.so.1

  • 3つとも見つかった

WRFのインストール (失敗)

一般権限ユーザ wrf作成

wrfでログイン

export NETCDF=/usr

wget http://www.meteoadriatic.net/pub/wrf/ems_install.pl.gz

  • Internal Server Error.
  • firefoxで見に行ってもファイルリストはあるが、ファイル自体を読み取れない

上記のインストール用のplファイルが取れないので、以降は他の情報に基づく。

OpenMPIのインストール

上記の手順ではOpenMPIがインストールされていないので、以下をroot権限で実行した。

yum install openmpi openmpi-devel

WRF3.6.1のビルド (再トライ) > 失敗

参考 http://qiita.com/7of9/items/cd769c0ccebf9e17f260

WRFV3.6.1.TAR.gz をWRFのサイトから取得し、一般ユーザの~/以下に解凍した (WRFV3フォルダができる)。

.bashrcに以下を追記

### WRF weather model stuff
export WRFIO_NCD_LARGE_FILE_SUPPORT=1
export NETCDF=/usr
export NETCDFPATH="/usr/lib64"

export WRF_BASE=/home/WRF

### NCARG NCL stuff
export NCARG=${WRF_BASE}/ncl
export NCARG_ROOT=${WRF_BASE}/ncl
export PATH=${NCARG_ROOT}/bin:${PATH}
export NCARG_LIB=${NCARG_ROOT}/lib
export NCARG_DATABASE=${NCARG_LIB}/ncarg/database
export NCARG_FONTCAPS=${NCARG_LIB}/ncarg/fontcaps
export NCARG_GRAPHCAPS=${NCARG_LIB}/ncarg/graphcaps

OpenMPI用にmpiccとmpif90へのパスを通すために以下も.bashrcに追記した

export OPENMPI=/usr/lib64/openmpi/bin
export PATH=${OPENMPI}:$PATH

source .bashrc

cd WRFV3
sudo module load openmpi-x86_64
export MPI_LIB=
./configure
メニューのうち34 (dmpar ... )を選択
netstingを1と選択

http://forum.wrfforum.com/viewtopic.php?f=5&t=7093
に記載の通りconfigure.wrfを変更。

vi configure.wrf にて編集

  • DM_CCの部分は記載のものと違っていた。この部分は変更しなかった
  • lnetcdff関連は記載の通りに変更した

./compile em_real >& log.compile

こちらの環境で40分近くかかってからコンパイルが終わった。

find . -name *.aを実行するとlibwrfio_int.aファイルが作成されていた。

./main/libwrflib.a
./external/fftpack/fftpack5/libfftpack.a
./external/io_grib1/libio_grib1.a
./external/io_int/libwrfio_int.a
./external/io_netcdf/libwrfio_nf.a
./external/esmf_time_f90/libesmf_time.a
./external/io_grib_share/libio_grib_share.a

find . -name *.mod でいつかのmodファイルも見つかっている。

main以下にwrf.exeファイルが生成されていない。

log.compileに以下の記載が見つかった。

/usr/include/openmpi-x86_64/mpi.h:1580: error: expected declaration specifiers or ‘...’ before ‘MPI_Comm’In file included from c_code.c:26:
...
ar: c_code.o: No such file or directory
make[3]: [librsl_lite.a] Error 1 (ignored)
...
gfortran: /home/wrf/WRFV3/external/RSL_LITE/librsl_lite.a: No such file or directory

以下の情報が見つかった。
http://www.hysk.sakura.ne.jp/meteorol/WRF_setup

v3.6.1 はコンパイル時にエラー発生する. 下記の 1,2 はその回避方法. v3.7.1 では不要(2015-10-07 確認済).

v3.6.1は鬼門だったようだ。

WRF3.7.1のビルド > 成功

WRF3.7.1のファイルを取得して再度ビルドした。

.bashrcに以下を追記

### WRF weather model stuff
export WRFIO_NCD_LARGE_FILE_SUPPORT=1
export NETCDF=/usr
export NETCDFPATH="/usr/lib64"

export WRF_BASE=/home/WRF

### NCARG NCL stuff
export NCARG=${WRF_BASE}/ncl
export NCARG_ROOT=${WRF_BASE}/ncl
export PATH=${NCARG_ROOT}/bin:${PATH}
export NCARG_LIB=${NCARG_ROOT}/lib
export NCARG_DATABASE=${NCARG_LIB}/ncarg/database
export NCARG_FONTCAPS=${NCARG_LIB}/ncarg/fontcaps
export NCARG_GRAPHCAPS=${NCARG_LIB}/ncarg/graphcaps

OpenMPI用にmpiccとmpif90へのパスを通すために以下も.bashrcに追記した

export OPENMPI=/usr/lib64/openmpi/bin
export PATH=${OPENMPI}:$PATH

source .bashrc

cd WRFV3
sudo module load openmpi-x86_64
export MPI_LIB=
./configure
メニューのうち34 (dmpar ... )を選択
netstingを1と選択

http://forum.wrfforum.com/viewtopic.php?f=5&t=7093
に記載の通りconfigure.wrfを変更。

vi configure.wrf にて編集

  • 全部の変更箇所を編集した

./compile em_real >& log.compile

こちらの環境で25分近くかかってからコンパイルが終わった。

log.compileに以下のエラーが出た。

gfortran: Internal error: Killed (program f951)

CFLAGS_LOCAL = -w -O3 -c

CFLAGS_LOCAL = -w -O2 -c
で再度ビルド.

./compile em_real >& log.compile2

前のビルドが残っていたのか、すぐにビルドが終わった。

...
==========================================================================
build started:   Mon Jul 18 09:13:33 PDT 2016
build completed: Mon Jul 18 09:13:43 PDT 2016

--->                  Executables successfully built                  <---

-rwxrwxr-x. 1 wrf wrf 38279033 Jul 18 09:13 main/ndown.exe
-rwxrwxr-x. 1 wrf wrf 38159223 Jul 18 09:13 main/real.exe
-rwxrwxr-x. 1 wrf wrf 37757095 Jul 18 09:13 main/tc.exe
-rwxrwxr-x. 1 wrf wrf 42740713 Jul 18 09:13 main/wrf.exe

==========================================================================

補足

最初の方でyumで色々installしているのは、本当に必要かまだ理解していない中で行っている。リンク先の人が使ってこちらでは使わない機能までinstallしている可能性がある。

WPS3.7.1 > 成功

WRF3.7.1がビルドできるようになったらWPSのビルドはすぐにできた。

WPS3.7.1のtar fileを取得して以下を参考にした。

configure.wpsを編集

./compile
./compile util

それぞれ数十秒で終了した。

geogrid.exe, metgrid.exe, ungrib.exeがビルドされた。

NCLのインストール

上記ではyumにてnclをインストールしてしまったが、以下記載のようにNCLのv6.3をインストールした方がいいようだ。

yum remove ncl ncl-devel
にてncl関連のパッケージをアンインストールした。

上記リンクを参考にNCL v6.3のtar.gzを/home/wrf/WRFV3/nclに解凍した。

それに伴い.bashrcファイルの設定は以下のように変更した。

### WRF weather model stuff
export WRFIO_NCD_LARGE_FILE_SUPPORT=1
export NETCDF=/usr
export NETCDFPATH="/usr/lib64"

export WRF_BASE=/home/wrf/WRFV3

### NCARG NCL stuff
export NCARG=${WRF_BASE}/ncl
export NCARG_ROOT=${WRF_BASE}/ncl
export PATH=${NCARG_ROOT}/bin:${PATH}
export NCARG_LIB=${NCARG_ROOT}/lib
export NCARG_DATABASE=${NCARG_LIB}/ncarg/database
export NCARG_FONTCAPS=${NCARG_LIB}/ncarg/fontcaps
export NCARG_GRAPHCAPS=${NCARG_LIB}/ncarg/graphcaps
export DISPLAY=:0.0

export OPENMPI=/usr/lib64/openmpi/bin
export PATH=${OPENMPI}:$PATH
1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2