爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 50461|回复: 62

WRF 3.5.1 在单机Centos上的安装

  [复制链接]

新浪微博达人勋

发表于 2013-12-3 22:59:56 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
本帖最后由 destroyer 于 2013-12-6 15:19 编辑

好吧那么,我在Centos上装WRF已经一个多月了,由于各种原因上网不方便可是吃尽了苦头,看网上好多在ubuntun上装wrf的成功例子,但为作为强迫症患者一直坚持到现在终于有了一定进展 ,贴在这里给大家以借鉴也帮助自己记忆。由于我是初学者,肯定有很多错误的地方,请大家批评。
ps:这个论坛为06climate难道是06年建的?服务器在某个大学么?

好啦,言归正转:
。                             
按装环境:
硬件:Compaq 325AMD双核)
系统:
Centos 6.4
模式版本:
WRF 3.5.1
编译器及软件:

gcc
version 4.4.7
gfortran
version 4.4.7
grads
grads-2.0.a9-bin-i686-pc-linux-gnu.tar.gz
ncl
ncl_ncarg-5.1.1.Linux_i686_gcc432.tar.gz
netcdf
netcdf 4.1.3
参考:
自己的
WRF安装总结.doc
http://blog.wrfchina.com/node/140
http://www.51testing.com/html/76/227476-99672.html
http://www.51testing.com/html/76/227476-99672.html
一、准备工作:
1
、增加rpmforge支持(好像可以增加yum库,我增加了这个命令后yum变得好用多了。)
rpm -Uhv rpmforge-release-*
来源为:
http://tree.repoforge.org/redhat/其中el6表示centos6.
另外几个库:

http://apt.sw.be/redhat/
http://pkgs.repoforge.org/
http://ftp.tsukuba.wide.ad.jp/software/gcc/

2
、检查gfortran/gcc安装情况:   
rpm -qa |grep gcc

如果列出:
gcc-c++-4.4.7-3.el6.i686
libgcc-4.4.7-3.el6.i686
compat-gcc-34-g77-3.4.6-19.el6.i686
compat-gcc-34-c++-3.4.6-19.el6.i686
gcc-gfortran-4.4.7-3.el6.i686
gcc-java-4.4.7-3.el6.i686

gcc-4.4.7-3.el6.i686
compat-libgcc-296-2.96-144.el6.i686
compat-gcc-34-3.4.6-19.el6.i686
则说明已安装成功,否则可采用
yum安装/或从第一章光盘Packages中寻找
gcc下载地址:http://gcc.gnu.org/mirrors.html
命令形式:
ls compat*
rpm -ivh compat*

3、最后,查看Xlib.hIntrinsic.h 是否安装
[guoguo@localhost ~]$ cd /usr/include/X11
[guoguo@localhost X11]$ ls

二、安装:
1grads安装
# cd /home/guoguo/Model
# tar -zvxf grads-2.0.a9-bin-i686-pc-linux-gnu.ta
r
# mv grads-2.0.a9 /usr/local
/
# mv lib.tar  /usr/local/ grads-2.0.a9 (lib文件到grads官方网站下载)
# mv /usr/local/ grads-2.0.a9 /usr/local/grads(更名)
# cd /usr/local/grads
# tar -vxf lib.tar
#exit                      (返回自己常用用户)
$ vi .bashrcrca ~]
# vi .bashrc     

#Set for grads

GRADS=/usr/local/grads

export GRADS

export PATH=$GRADS/bin:$PATH

export GADDIR=$GRADS/dat

export GASCRP=$GRADS/lib

$source .bashrc

2、设置gccgfortran环境变量
$vi ~/.bashrc
#Set for gfortran and gcc
export CC=/usr/bin/gcc
export CXX=/usr/bin/g++
export FC=/usr/bin/
gfortran
export
F90=/usr/bin/gfortran
$source .bashrc

3、安装netcdf

netcdf ftp
下载站:ftp://ftp.unidata.ucar.edu/pub/netcdf/
(在该网址下载4.1.3-fix.tar解压到netcdf目录中。)
$tar -zvxf netcdf-4.1.3.tar.gz

$cd  netcdf-4.1.3
$./configure --disable-dap --disable-netcdf-4 –prefix=/usr/local/netcdf(其中--disable选项为必须,否则会出现错误)
$make
$make check >& netcdf.chec.log
$make install设置环境变量:(其它版本netcdf试了三个都提示程序中变量“未命名”,估计是编译器版本问题,不再尝试)
$vi ~/.bashrc

export NETCDF=/usr/local/netcdf
export PATH=$PATH:$NETCDF/bin
export NETCDF_LIB=$NETCDF/lib
export NETCDF_INC=$NETCDF/include

export MANPATH=$NETCDF/share/man
$source ~/.bashrc
$ncdump
若显示netcdf使用说明,则说明安装成功。

4、安装ncl
$tar -zvxf ncl_ncarg-5.1.1.Linux_i686_gcc432.tar.gz
$su
#mv ncl /usr/local


设置环境变量

$vi ~/.bashrc
#Set for ncl
export NCARG_ROOT=/usr/local/ncl

export NCARG_LIB=/usr/local/ncl/lib
export NCARG_INC=/usr/local/ncl/include
export PATH=/usr/local/ncl/bin:$PATH
$source ~/.bashrc
$ncl
进入程序说明安装成功
试验
ncl
ng4ex gsun01n ncl gsun01n.nclncargex cpex08ctrans -d X11 cpex08.ncgm分别有图形输出则说明安装成功。

5、安装WRFV3(此处开始尤为注意安装顺序
准备工作:

设置WRF大数据支持export WRFIO_NCD_LARGE_FILE_SUPPORT=1

查看
zlib libpng jasper lapack blas等是否安装
locate zlib

若未安装可yum install (使用rpmforge后可以装)或者下载安装,下载地址见WRF下载页面,或google搜索。

添加各库环境变量(若已预装则可locate libz形式来查看,Centos6.4基本皆预装,一般预装无需声明,这里因为下面编译WRFV3WPS出现了问题,需要声明JASPER环境变量)

#set for jasper
##
主要是为了在装
wpsconfigure.defaults(arch中的)中引用JASPERLIB变量
export JASPER=/usre
xport JASPERLIB=/usr/lib

export JASPERINC=/usr/local/include/jasper


添加
netcdf编译库(此步骤,为调试WRFV3必须否则会有wrf.exe运行出错wrf.exe: error while loading shared libraries: libnetcdff.so.5: cannot open shared object file: No such file or directory):
export LD_LIBRARY_PATH=/usr/local/netcdf/lib:$LD_LIBRARY_PATH


安装
wrfv3


解压
进入WRFV3目录
进入
arch目录
修改Confi_new.pl(使其支持grib2输入输出)
vi Confi_new.pl
/grib2来查找如下位置:
$I_really_want_to_output_grib2_from_WRF = "FALSE" ;

改为:
$I_really_want_to_output_grib2_from_WRF = "TRUE" ;
/jasper来查找一下sw_jasper位置并改为如下(共两处)  
$sw_jasperlib_path = "/usr/lib";
  
$sw_jasperinc_path = "/usr/local/include/jasper";
cd .../configure选择:gfortrangccserial这一组会出现

************************** W A R N I N G ************************************

There are some Fortran 20003 features in WRF that your compiler does not recognize
The IEEE signaling call has been removed. That may not be enough.

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

如上提示:参照:
http://forum.wrfforum.com/viewtopic.php?f=5&t=5703

修改
;configure.wps对应FORMAT_FIXED/FORMAT_FREE改为如下两行:
FORMAT_FIXED    =       -ffixed-form -cpp
FORMAT_FREE     =       -ffree-form -ffree-line-length-none -cpp
./compile后
生成
wrf.exe ndown.exe real.exe nup.exe tc.exe
./compile >& compile.check.log
利用
vi compile.check.log/erro查看输出结果发现并无erro输出。则说明WRFV3安装成功。

tip
:可以将wrf_path/main加入到PATH变量中这样在任何一个位置皆可wrf.exe运行。

6、安装
wps


安装
wps后会生成不了plot*.exe两个文件,因此作如下修改:
解压后修改arch中的configure.defaults
gfortran相应位置增加:
COMPRESSION_LIBS    = -L$(JASPERLIB) -ljasper -lpng -lz
COMPRESSION_INC     = -I$(JASPERINC)

NCARG_LIBS2         = -L/usr/local/ncl/lib -lncarg -lncarg_gks -lncarg_c \                    
                                       -L/usr/lib -lX11 -lpng \
                     
                                       -L/usr/lib/gcc/i686-redhat-linux/3.4.6 -lgcc


修改
preamble
NCARG_LIBS改为:
NCARG_LIBS                =        -L$(NCARG_ROOT)/lib -lncarg -lncarg_gks -lncarg_c \                              
                                                   -L/usr/lib -lX11 \

                                                    -L/usr/lib/gcc/i686-redhat-linux/3.4.6 -lgcc


./configure
会提示Fortran+NETCDF运行有问题,这里无视,

修改对应
compile即可


vi compile

将其中对应行改为如下:
if      ( ${#argv} == 0 )
then
        
set names        =        ( geogrid ungrib metgrid g1print g2print   rd_intermediate mod_levs avg_tsfc calc_ecmwf_p plotfmt plotgrids )


./compile >& compile.check.log

会发现各
exe皆已生成。
(这个地方,还是有个问题,就是做如此修改后未修改前的int2nc.exeheight_ukmo.exe会消失,请各位帮忙解决。预计分别执行./compile wps ./compile util  经验证,可以实现。)

5安装WRFDA
./configure wrfda
./compile all_wrfvar
如果/home/name/Program/WRFDA/var/da 里面有da_wrfvar.exe, da_update_bc.exe及它共26个.exe文件,那就说明WRFDA安装成功了

6安装AWRpost
将src中的Makefile文件中相应条目改为:ARWpost.exe: $(OBJS)
$(FC) $(FFLAGS) $(LDFLAGS) -o $@ $(OBJS) \
-L$(NETCDF)/lib -I$(NETCDF)/include -lnetcdf -lnetcdff
./configure
./compile生成AWRpost即可
运行测试
./ARWpost如果出现:
sh: .foo: Permission denied
sh: .foo1: Permission denied
cat: .foo: No such file or directory
chmod 777 .foochmod 777 .foo1

7解压geog完成。

评分

参与人数 2金钱 +12 收起 理由
quenta + 2 赞一个!
kongfeng0824 + 10

查看全部评分

密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2013-12-3 23:33:06 来自手机 | 显示全部楼层
好吧,好像排版有很大问题,明早用电脑改吧。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-12-4 08:29:16 | 显示全部楼层
不错,看来没少下工夫,谢谢分享!
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-12-4 08:33:33 | 显示全部楼层
谢谢分享啦,还是不很不错的一个新生指导
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-12-4 09:00:34 | 显示全部楼层
谢谢分享!!
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-12-4 10:05:19 | 显示全部楼层
感谢分享  
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2013-12-4 10:19:55 | 显示全部楼层
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2013-12-4 10:22:07 | 显示全部楼层
又是那隻貓 发表于 2013-12-4 08:33
谢谢分享啦,还是不很不错的一个新生指导

对新生来说有点用,写的还不够详细,有机会在改。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-12-4 12:34:54 | 显示全部楼层
谢谢楼主分析,力挺呐!!!么么!
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-12-4 12:47:20 | 显示全部楼层
我在这堆代码里发现我的名字了
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表