【CESM】1.2.0环境搭建扩充版

上周的时候,CESM的环境基本算是搭建完成了,得益于论坛中很多朋友的帮助,希望写一个尽量完整的搭建指南,供新同学参考。
当然欢迎高手们批评指正。
参考帖: http://bbs.06climate.com/forum.php?mod=viewthread&tid=2847 @ 天目神眉
         http://bbs.06climate.com/forum.php?mod=viewthread&tid=15197 @ andrewsoong
         http://bbs.06climate.com/forum.php?mod=viewthread&tid=35950 @ [email protected]
本人的运行环境为linux centos 7 64位,编译器为pgi,并行用的是mpich。
第一步安装pgi,zlib,hdf5,netcdf,netcdf-c,netcdf-fortran(按顺序安装)

首先是pgi,pgi下载地址传送门 http://pan.baidu.com/s/1dDMDmwx  提取密码9f2y
先解压,按照破解包说明把破解文件复制过去,然后就可以安装了(例子安装到了/opt/pgi中)
在命令行中输入 cd /opt
               mkdir pgi
               cd 你解压后的目录(观察下有没有install文件)
               ./install
               然后填accept,single system install,其他问y或n的填n就行,然后安装位置写/opt/pgi

安装好后配置环境变量
在命令行中输入 vi ~/.bashrc
               在后面添加
               
               export PGI=/opt/pgi/linux86-64/10.6/
               export MANPATH=$MANPATH:$PGI/man
               export LM_LICENSE_FILE=/opt/pgi/license.dat
               export PATH=$PATH:$PGI/bin




     
最后退回到命令行,输入 source ./bashrc使文件生效
检测pgi是否安装成功,输入$pgf90,如果出现$pgf90-Warning-No files to process即为成功。

然后安装zlib,下载传送门 http://download.csdn.net/detail/u011510965/9335797
解压,cd到解压后目录   ./configure --prefix=/home/ed/local

                      make check install

configure的时候会报No shared library support的错,需要指定编译器,具体命令./configure --prefix=/home/ed/local --sharedlibdir=/opt/pgi/linux86-64/15.10/lib


再安装hdf5,下载传送门 http://download.csdn.net/detail/u011510965/9335833
解压,cd到解压后目录 ./configure --with-zlib=/home/ed/local --prefix=/home/ed/local  (可以加上CC=icc FC=ifort么?)
                     make check install (make和make check分开写)


然后就是netcdf系列的安装了,4.2以后netcdf的c和fortran就分开了,为了能够正常使用,一定要装在一起!而且要用同一个编译器!不然后果很严重!踩过坑的人表示真的很头痛...
然后安装netcdf,下载传送门 http://download.csdn.net/detail/u011510965/9335765
cd到解压目录
CPPFLAGS=-I/home/ed/local/include LDFLAGS=-L/home/ed/local/lib ./configure --prefix=/home/ed/local CC=pgcc FC=pgf90(建议选pgi,不然后面挺麻烦的,用intel的写ifort)
然后 make
    make check
    make install

然后安装netcdf-c库,下载传送门: http://download.csdn.net/detail/u011510965/9336007
CPPFLAGS=-I/home/ed/local/include LDFLAGS=-L/home/ed/local/lib ./configure --prefix=/home/ed/local CC=pgcc FC=pgf90
make
make check
make install


好哒,然后我们要安装netcdf-fortran了,先打开bashrc文件,加入
export LD_LIBRARY_PATH=/home/ed/local/lib:${LD_LIBRARY_PATH}
source ~/.bashrc生效
CPPFLAGS=-I/home/ed/local/include LDFLAGS=-L/home/ed/local/lib ./configure --prefix=/home/ed/local CC=pgcc FC=pgf90
make
make check
make install


PS: make 或者make check不过的时候,重新弄的话要先运行“make clean”


然后配置netcdf的环境变量
export NETCDF=/home/ed/local
export PATH=$PATH:$NETCDF/bin:$NETCDF/include:$NETCDF/lib

export MANPATH=$MANPATH:$NETCDF/share/man


source ~/.bashrc

检测netcdf是否安装成功: ncdump
最后安装 mpich,建议版本为3.1.1(太高最后会出现语法错误)
安装到/home/ed/local/mpich下


———————————————————接下来是配置篇—————————————————————————
打开scripts/ccsm_utils/Machines,里面有个config_machines.xml打开在后面添加,按自己目录酌情修改
                 //machine name自己取的,newmach
        os is Linux
        LINUX
        pgi
        mpich
        /cesm/cesm1_2_0/$CASE/run        //自己定的
        /cesm/cesm1_2_0/$CASE/bld
        /cesm/cesm1_2_0/inputdata       //文件夹事先要创建出来
        /cesm/cesm1_2_0/lmwg
        /cesm/cesm1_2_0/archive/$CASE
        /cesm/cesm1_2_0/$CASE              
        /cesm/cesm1_2_0/ccsm_baselines
        /cesm/cesm1_2_0/tools/cprnc
        srinathv -at- ucar.edu
        2            //建议填1或2
        8
        16


然后打开config_compiler.xml打开在后面添加

   /home/ed/local
   -L/home/ed/local/lib -lnetcdf -lnetcdff
   /home/ed/local/mpich


然后执行cp env_mach_specific.userdefined env_mach_specific.newmach,在后面添加
set NETCDF_PATH = /home/ed/local
set MPI_PATH = /home/ed/local/mpich
setenv INC_NETCDF ${NETCDF_PATH}/include
setenv LIB_NETCDF ${NETCDF_PATH}/lib
setenv INC_MPI ${MPI_PATH}/include
setenv LIB_MPI ${MPI_PATH}/lib

然后执行cp mkbatch.userdefined mkbatch.newmach,修改按照自己机器的情况
将两句含有mpi执行命令(mpiexec和mpirun)的其中一句解除注释,就可以了

———————————————————接下来是运行篇—————————————————————————
先到models/utils/pio下./configure
然后cd到models/utils/mct下./configure CC=pgcc FC=pgf90
如果出现C编译器的相关问题,就重装PGI
到scripts目录
./create_newcase -case /cesm/cesm1_2_0/case -mach newmach -compset X -res f19_g16
然后进入case那个目录
./cesm_setup
./case.clean_build   (svn :用户名:guestuser   密码:friendly)
./case.build
./case.run
按照提示信息,如果说成功的话那么环境就搭建好啦

你可能感兴趣的:(【CESM】1.2.0环境搭建扩充版)