爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 30512|回复: 37

WRFV3.3.1 + WPSV3.3.1+WRFDAV3.3.1安装(ubuntu11.10)

  [复制链接]
发表于 2012-3-26 21:40:14 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 lzs04 于 2012-3-26 21:39 编辑

WRFV3.3.1 + WPSV3.3.1+WRFDAV3.3.1i686机器  Ubuntu11.10下用 gcc 4.4.6 + gfortran 编译安装
感谢ztftom 随缘  两位大神,下文大部分材料都是参考了他们两位的攻略,略有补充。折腾了两天之后,终于完成了WRF的安装,为了方便后来者参考,写下此文。——lzs04
主要心得:
1、编译器要固定,一开始先配置好,之后不变。版本很重要,选择4.4最好,不要选择最新的。
2、各种包的兼容性很重要(不是越新越好,合理选择好版本,多看readme
3、各种包的安装位置很重要(各种export,各种修改~/.bashrc,各种配置configure
4、这是一个考验耐心的工作,要有信心,多看compile后的log,有问题google,一点点解决,摸索。
5、及时记录下自己的发现,总结分享。
6bbs.06climate.com是个好地方。
1    Ubuntu11.10
到网站 www.ubuntu.com 下载,刻光盘,安装。
刚安装完经常会出现屏幕的假死状态,需要对软件进行更新后就好了。
如果出现屏幕假死,可用Ctrl+alt+f2切换到命令行模式,输入用户名密码后,用
命令 killall gnome-session 重新启动桌面。Ctrl+alt+f7切换回桌面系统。
2    配置系统
掌握基本的linux命令。
配置更新源。
sudo gedit /etc/apt/sources.list
把源放在了原来源的前面,这样会优先使用。
3    gcc  + gfortran +  g++ 安装
重点: 一定要装4.4版本。
如果之前装过其他版本,建议参考“随缘”兄的文章:
之所以要先确定编译器的版本,是因为后面装的各种包,和WRF,WPS编译器最好一样,不一样会带来很多问题。我的机器就是因为更新过,所以又重新装了一遍gcc 4.4.6
先输入命令:
#gcc –version   
#gfortran --version
来检查gccgfortran的版本或是否安装。
对于为什么用4.4版本,是因为我用最新版编译的时候gcc4.5.2出现了bugwrf没有编译成功,而换4.4编译完成,gcc4.5.2bug好像是通过#upgrade gcc可以来补的,我没再深究。
正常情况下,ubuntu11bin执行文件是放在/usr/bin文件里面的,系统默认安装是gcc4.5.2版本和不安装gfortranubuntu11自带的新立得软件是个很不错的软件安装系统,打开新立得,点搜索,在里面输入gfortran-4.4,它会自动在源里搜到关于gfortran-4.4的安装包,选择好安装包,双击就会标记,然后点应用,新立得就会自动处理依赖关系下载安装了,(装g++也一样的程序)。安装gcc4.4也是一样的,有趣的是,Java程序的安装依赖于gcc4.4Java也是我们后面要用到的,所以直接搜Java,找到Java-common什么的安装包,标记,应用后,系统会提示需要安装哪些依赖系统,在里面就可以看到有gcc4.4的安装包在里面。
当然,如果你想把编译器更新到最新版,可以使用命令:
#apt-get install gcc gfortan g++ m4 csh (这里csh也要更新,否则后面编译wrf./configure ./compile会有提示不可用)
或者是#apt-get install build-essential
以上做完后,我们打开/usr/bin文件,会看到有4.54.4两个版本的编译器,现在/usr/bin/gcc/usr/bin/gfortrang++的链接是指向系统默认4.5最新版本的。我们需要做个新的链接指向4.4版本,先把原各链接后改名加back,然后执行建立链接命令:
#ln -s/usr/bin/gcc-4.4 /usr/bin/gcc
Gfortrang++都一样做这样的链接,完成后再查看版本:
#gcc --versiongfortrang++一样)
就可以看到编译器都是4.4版本的了
4    一些必要的包的安装:zlib  libpng  jasper
三个库的安装顺序是zlib---libpng----jasper
一般都是安装在/usr/local下面,如安装zlib是这样:
解压缩的这些就不多说了,直接右键解压缩,可以不用命令,与windows下面是一样的
#./configure --prefix=/usr/local/zlib
#make
#make  install
只要前面编译器设置正确,这里应该不会有什么问题的,很顺利的通过了。Libpngjasperzlib安装是一样的,不重复了。
都安装完后,要在/root/bashrc里设置jasperlibinclude路径,以备wrf调用
打开bashrc,加入以下几行:
#for JASPER
export=JASPER=/usr/local/jasper
export=JASPERLIB=/usr/local/jasper/lib
export=JASPERINC=/usr/local/jasper/include
然后
#cd
#source .bashrc就可以了。
建议安装版本:(这个是WPS安装文件下 ungrib README_LIBS  建议安装的版本,具体的话google或者到各自的官方网站上去找就能找到)
不建议通过如下命令安装:
apt-get install zlib1g-dev
apt-get install libjasper-dev
apt-get install libpng12-dev
因为在安装WPS的时候,需要把includelib文件放到一起(其实也可以不用,但是这样方便)。同时,通过以上命令安装,版本不好控制,可能出现兼容性问题。
5    安装 netcdf 4.0.1
重点:建议安装netcdf4.0.1,更高的版本可能会导致安装有问题。
netcdf4.1.3新版的会出现no entry nc.o in archive的错误了。
具体见文章:
下载netcdf的地址是  http://www.unidata.ucar.edu/downloads/netcdf/index.jsp
下载:netcdf-4.0.1.tar.gz
ztftom”大侠在其[原创搞定Ubuntu:单机WRF安装 的帖子中
说: “进入解压缩后得到的文件夹,
./configure  --disable-dap --disable-netcdf-4 --prefix=/home/ztftom/util/netcdf
注意:上面红色高亮的两个选项是很多次实验后证明必须的。--disable-dap的原因是缺少一个‘curl’的lib --disable-netcdf-4是因为WRF暂时不支持netcdf 4
也可以选在通过如下命令安装libcurl3包:
Sudo apt-get install libcurl3-openssl-dev
这样就只需设置一个不支持hdf5的参数就可以了:
Cdnetcdf路径下,使用命令:
#./configure --disable-netcdf-4 --prefix=/usr/local/netcdf
还是安装在/usr/local下面,方便不同用户都可以调用
#make
#make install
这里应该也是很顺的,不会有什么错误。
同样也是要在bashrc文件里设置环境变量
#gedit ~./bashrc
打开bashrc,加入下面几行:
#for netcdf
export   NETCDF=/usr/local/netcdf
export   PATH=.:$NETCDF/bin:$PATH
export   LD_LIBRARY_PATH=${NETCDF}/lib:${LD_LIBRARY_PATH}
export   LD_RUN_PATH=${NETCDF}/lib:${LD_RUN_PATH
WRF需要,再加入一行开启支持WRF输出大文件的选项设置:
export   WRFIO_NCD_LARGE_FILE_SUPPORT=1
然后#cd
#source   .bashrc
我们可以验证下netcdf安装成功与否,在终端中输入:
#ncdump
6    安装NCL6.0
下载NCL6.0的地址是:
http://www.ncl.ucar.edu/Download/
http://www.earthsystemgrid.org/dataset/ncl.html
http://www.earthsystemgrid.org/dataset/ncl.6.0.0.0.bin.nodap.html
要在www.earthsystemgrid.org注册下,然后登入后才可下载
我们这里下载已经在Linux_Debian下编译好的包,如图中选择:
具体可以用 命令:
#uname -m
#gcc –version
来查看自己的该下哪一个版本。
我选择的是编译好了的包。
将其解压缩后,将原文件名改为ncl_ncarg-6,然后复制到/usr/local/下,
打开bashrc文件加入ncarg的环境变量设置,加入如下几行:
#for ncarg
export NCARG_ROOT=/usr/local/ncl_ncarg-6
export PATH=$NCARG_ROOT/bin:$PATH
export MANPATH=$NCARG_ROOT/man:$MANPATH
export DISPLAY=:0.0
然后#cd
#source  .bashrc
验证NCL安装成功与否:
#ncargversion
7    WRF3.3.1的安装
Wrf3.3.1模式的下载地址是:
http://www.mmm.ucar.edu/wrf/users/download/get_sources.html
也是要注册下才可下载
WRF要用WRFV3.3.1.TAR.gz版本,WRFV3.3.TAR.gz有一些错误,据说有补丁,但我没用过。
/home自己的用户下面建立一个model的文件夹来存放wrf
如我的是:/home/jie/model wrf3.3解压缩在这个文件夹下,然后就可以进行编译了。
ubuntu里,现在就可以敲入命令开始编译了
#./configure
选择合适的平台。
根据自己的系统选择1-4中的一个。我的理解是:1为单核,2为多核,3为内存共享,多cpu?  4为多cpu多核
如果出现找不到libcloog-ppl0的提示,可以用如下命令安装:
Sudo apt-get install libcloog-ppl0
注:如果用gcc\g++\gfortran 4.6 编译的时候出现错误,
"Error: Size of 'put' argument of 'random_seed' intrinsic at (1) too small (8/12)"的错误
改成gcc\g++\gfortran 4.4 编译后,错误消失。
这也就是为什么建议装gcc\g++\gfortran 4.4.6的原因。
开始执行编译命令:
#./compile  em_real  >& log
这里,一般做天气预报选test里面的em_real,做研究的话可选对应的其他的,好了,现在就静静的等待计算机完成。
我们在WRFV3的文件夹里会看到有个log的记录文件生成,而且计算机在不断向里面写记录,这里一般不会出现什么错误,会顺利完成的。等到全部编译完成,这个log文件的大小正常情况下应该是506KB左右。编译完成,光标返回后,打开log文件,点搜索,输入:错误,查看是否有错。如果在状态栏看到“错误未找到”提示,那么,恭喜你,WRF主程序编译OK了!
8    WPS3.3.1的安装
WPS3.3.1解压后的文件夹要和WRFV3放在一个文件下面。
配置编译。
#./configure
想配置WRF一样,选择带grib2的合适的平台。
WPS文件夹下会生成configure.wps文件。在这里,我们需修改下此文件内的相关库的本机化路径。
首先,我们在/usr/local下建立wpslibwpsinclude两个文件夹来存放相关文件将/usr/local下安装的zliblibpngjasper文件夹下的各lib文件夹内的东西复制到wpslib内,这里绕了点,说白了,就是把zliblibpngjasper生成的lib库文件统一放入wpslib内便于管理调用和修改设置。关于include头文件和刚才做相同的处理,统一放入wpsinclude文件夹内。
还有一个libX11的库文件路径需要修改,configure.wps的默认搜寻路径在ubuntu11.10是没有的。见下图:
其实libw3.alibg2_4.a两个库文件在/WPS/ungrib/src/ngl里的g2w3文件夹里是生成了的,但是好像生成的链接不可用似的,对于这个问题的解决我主要是参考了“Ice & Cream”大侠在网上的一篇博文:
http://hi.baidu.com/longlivehejian/blog/item/702dfaeb2f52fccad439c92b.html
文中讲到“3. wps的编译过程会有几个被忽略的错误,提示找不到libw3.alibg2_4.a,这是WPS/ungrib/src/nglMakefile中的相对路径问题,用gedit打开该Makefile,将两个"$(RANLIB)"后面的路径中的"w3/""g2/"去掉。”下图已去掉。
文章中说到的另外一个错误,我没有碰到,可能是因为我用的是更新的版本V3.3.1,所以没有碰到。
成功编译后,应该在主目录里出现如下exe文件。
util文件夹下出现如下exe文件
9WRFDA3.3.1的安装
到网站下载WRFDA3.3.1
http://www.mmm.ucar.edu/wrf/users/download/get_source.html
解压后,和WRFV3WPS放在同一个目录下。
#cd WRFDA
#export BUFR=1
#export CRTM=1
#export gfortran:export GFORTRAN_CONVERT_UNIT="little_endian:94-99"
./configure wrfda
选择和前面WRF一样的类型即可。
./compile all_wrfvar  >& log
运行的时间比较长,耐心等待吧,log大概411KB,如果log中没有错误,恭喜你。
ls -ls var/build/*.exe 会看到很多exe,da_wrfvar.exe等。
10、参考材料:
3http://hi.baidu.com/longlivehejian/blog/item/59963ff2c250a3d20b46e029.html
4http://hi.baidu.com/longlivehejian/blog/item/702dfaeb2f52fccad439c92b.html
5http://hejianjun520520.blog.163.com/blog/static/41789395201072011110662/
6http://apps.hi.baidu.com/share/detail/31941939
7http://www.mnmuc.org/thread-13-1-1.html

WRFV3.3.1 install on Ubuntu11.10.pdf

742.92 KB, 下载次数: 2337, 下载积分: 金钱 -5

评分

参与人数 3威望 +2 金钱 +43 贡献 +11 体力 +200 收起 理由
mofangbao + 2 + 20 + 8 + 200
陌小默的 + 8 + 1 赞一个!
天目神眉 + 15 + 2 很给力!

查看全部评分

密码修改失败请联系微信:mofangbao
发表于 2012-3-26 22:17:46 | 显示全部楼层
好啊!兄弟,把我一直没完成的做全了,惭愧啊!一直在忙其他的事情,一些收尾工作没继续做
密码修改失败请联系微信:mofangbao
发表于 2012-3-26 22:32:34 | 显示全部楼层
多谢楼主分享
密码修改失败请联系微信:mofangbao
 楼主| 发表于 2012-3-26 22:45:13 | 显示全部楼层
哈哈 很感谢你的文章,要不我不可能两天半搞定。v3.3.1还是比v3.3好很多,你文章里写的好多bug在我这都没有了。
密码修改失败请联系微信:mofangbao
发表于 2012-3-26 23:24:13 | 显示全部楼层
正好一个好友晚上还在问,谢谢拉
密码修改失败请联系微信:mofangbao
0
早起挑战累计收入
发表于 2012-3-26 23:25:02 | 显示全部楼层
每当看到有朋友来这里总结经验分享给大家我就很感动,觉得为论坛付出的所有一切都值了,感谢楼主写下这么精彩的帖子
密码修改失败请联系微信:mofangbao
发表于 2012-3-27 10:39:20 | 显示全部楼层
膜拜高人啊,自身机器配置不行,一直装的都是WRFV3.1,先学习学习
密码修改失败请联系微信:mofangbao
 楼主| 发表于 2012-3-27 12:51:06 | 显示全部楼层

哈哈 感谢管理员给我们提供的平台! 刚到这个论坛,多多指教~
密码修改失败请联系微信:mofangbao
发表于 2012-3-29 12:47:25 | 显示全部楼层
好东西,学习了,顶起来!
密码修改失败请联系微信:mofangbao
发表于 2012-3-30 10:53:37 | 显示全部楼层
{:eb317:}{:eb317:}{:eb317:}{:eb317:}
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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