各类安装包的准备

官网教程:https://www2.mmm.ucar.edu/wrf/OnLineTutorial/compilation_tutorial.php
根据官网教程需要的安装包有以下几个

支持库用途
zlib-1.2.7zlib是提供数据压缩用的函式库,是WPS(后面会提到)必须库。
netcdf-4.1.3读nc文件的。
mpich-3.0.4用于并行运算的工具,为的就是并行处理WRF,意思就是如果计算机是单核的,可以不装,哈哈。
libpng-1.2.50libpng是一款C语言编写的比较底层的读写PNG文件的跨平台的库,需要zlib支持。编译具有 GRIB2 功能的 WPS(特别是 ungrib)所必需的压缩库。
Jasper-1.900.1也是图片库,编译具有 GRIB2 功能的 WPS(特别是 ungrib)所必需的压缩库。

支持库的下载

  1. 利用Linux命令下载。
  2. 进入网站直接下载。https://www2.mmm.ucar.edu/wrf/OnLineTutorial/compile_tutorial/tar_files/
  3. 从官方教程的链接中下载。
  4. 留下邮箱,作者给你发。

这里作者演示第一种下载方式,后面三种得到的压缩包请自行放在Build_WRF文件夹下面

*提示两个操作 *

cd..   返回上一层文件目录
cd    返回顶层

第一步:进入Build_WRF文件目录下

输入:

cd Build_WRF

第二步:创建LIBRARIES文件夹

这里只是在Build_WRF文件目录下创建LIBRARIES文件夹,但不要进入其中。
输入:

mkdir LIBRARIES

第三步:下载第三方库

Build_WRF文件目录下,依次输入以下五条命令:

wget https://www2.mmm.ucar.edu/wrf/OnLineTutorial/compile_tutorial/tar_files/zlib-1.2.7.tar.gz
wget https://www2.mmm.ucar.edu/wrf/OnLineTutorial/compile_tutorial/tar_files/mpich-3.0.4.tar.gz
wget https://www2.mmm.ucar.edu/wrf/OnLineTutorial/compile_tutorial/tar_files/netcdf-4.1.3.tar.gz
wget https://www2.mmm.ucar.edu/wrf/OnLineTutorial/compile_tutorial/tar_files/jasper-1.900.1.tar.gz
wget https://www2.mmm.ucar.edu/wrf/OnLineTutorial/compile_tutorial/tar_files/libpng-1.2.50.tar.gz

在这里插入图片描述
这样,在Build_WRF文件下面就有有五个压缩包。

支持库的安装

请一定要按照以下顺序安装,当然,好像也就是zlib有点影响,尽量吧,哈哈。

第一步:安装zlib

依次输入

tar xzvf zlib-1.2.7.tar.gz        解压文件
cd zlib-1.2.7                     进入该文件夹
make
make install
cd ..                             返回上一层文件夹

截图就不放了,就是一堆英文,注意最后要退回Build_WRF目录下

第二步:安装mpich

依次输入

tar xzvf mpich-3.0.4.tar.gz        解压文件
cd mpich-3.0.4                     进入该文件夹
./configure --prefix=$DIR/mpich
make
make install
cd ..                             返回上一层文件夹

截图就不放了,就是一堆英文,注意最后要退回Build_WRF目录下

第三步:安装libpng

依次输入

tar xzvf libpng-1.2.50.tar.gz        解压文件
cd libpng-1.2.50                     进入该文件夹
./configure --prefix=$DIR/grib2
make
make install
cd ..                             返回上一层文件夹

截图就不放了,就是一堆英文,注意最后要退回Build_WRF目录下

第四步:安装jasper

依次输入

tar xzvf jasper-1.900.1.tar.gz        解压文件
cd jasper-1.900.1                     进入该文件夹
./configure --prefix=$DIR/grib2
make
make install
cd ..                             返回上一层文件夹

截图就不放了,就是一堆英文,注意最后要退回Build_WRF目录下

第五步:安装netcdf

依次输入

tar xzvf netcdf-4.1.3.tar.gz        //解压文件
cd netcdf-4.1.3                     //进入该文件夹
./configure --prefix=$DIR/netcdf --disable-dap --disable-netcdf-4 --disable-shared
make
make install
cd ..                             //返回上一层文件夹

安装成功会出现
在这里插入图片描述

注意最后要退回Build_WRF目录下
在netcdf安装成功后需要修改环境变量,但是之前帖子已经修改了全部的变量,这里就不用修改了,下面的语句给大家了解以下

环境变量
export PATH=$DIR/netcdf/bin:$PATH
export NETCDF=$DIR/netcdf

选装hdf5库(非必要)

官方教程未给出这个库的安装,应该是非必要支持库,用来处理hdf5数据的。
咱们也简单安装以下

第一步:下载

也是在Build_WRF目录下

wget https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.8/hdf5-1.8.22/src/hdf5-1.8.22.tar.gz

第二步:解压安装

tar -xvf hdf5-1.8.22.tar.gz
cd hdf5-1.8.22
./configure --prefix=$DIR/hdf5
make
make install
cd ..                             //返回上一层文件夹

是否成功无所谓。

测试

这也是官方教程要求的,目的在于检查支持库的安装情况

第一步:下载测试包

先从Build_WRF目录转到TESTS目录下

cd
cd TESTS

下载方法一样,有四种

wget https://www2.mmm.ucar.edu/wrf/OnLineTutorial/compile_tutorial/tar_files/Fortran_C_NETCDF_MPI_tests.tar

第二步:解压测试包

tar -xf Fortran_C_NETCDF_MPI_tests.tar

没有反应,没关系,继续就好了

第三步:测试

第一步:Fortran + C + NetCDF

依次输入:(第一行的点不要忘记)

cp ${NETCDF}/include/netcdf.inc .
gfortran -c 01_fortran+c+netcdf_f.f
gcc -c 01_fortran+c+netcdf_c.c
gfortran 01_fortran+c+netcdf_f.o 01_fortran+c+netcdf_c.o \-L${NETCDF}/lib -lnetcdff -lnetcdf
./a.out

出现如图结果代表成功
在这里插入图片描述

第二步:Fortran + C + NetCDF + MPI

依次输入:(第一行的点不要忘记)

cp ${NETCDF}/include/netcdf.inc .
mpif90 -c 02_fortran+c+netcdf+mpi_f.f
mpicc -c 02_fortran+c+netcdf+mpi_c.c
mpif90 02_fortran+c+netcdf+mpi_f.o 02_fortran+c+netcdf+mpi_c.o -L${NETCDF}/lib -lnetcdff -lnetcdf
mpirun ./a.out

出现如图结果代表成功
在这里插入图片描述

至此,WRF所需的一切先前准备都结束了

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐