专栏名称: 锐多宝
遥感技术教程、资讯与前沿论文
目录
相关文章推荐
51好读  ›  专栏  ›  锐多宝

在超算上面配置WRF-Chem模式-相关支持软件(库)的安装

锐多宝  · 公众号  ·  · 2024-06-12 09:04

正文

请到「今天看啥」查看全文


好几个月没更新了,因为在忙着申博,出国手续,入学报到/注册,上课等一些其他事情(真的太繁琐了 ),终于快步入正轨了, 第一次在漂亮国的春节(后续也有可能会分享一些国外的有趣的事hhh),又是一段新的旅程,相见时难别亦,人生无处不青山,加油干吧,

这段时间一直在学校超算上折腾这个WRF-Chem数值模式,历时两周多终于折腾好了,先把第一篇笔记 整理好发出来,后续工作的一个idea要用WRF-Chem模式来做了,希望能够顺利,
我本身不是数值模式或者大气科学相关专业的,之前也粗浅的学习过一下这个模式,网络上关于WRF-Chem的教程也不是很丰富,加上数值模式本身又是十分繁琐复杂,整理了一份在学校超算上安装WRF-Chem的笔记,希望能提供一些帮助,如下:

1 安装前的预备知识

1.1 软件(库)安装的一般性流程

以下安装的很多软件(库),包括后续用的WRF-Chem模型等配套软件,都是属于linux软件包中的源码包,源码包开源,可定制软件使用功能(也是WRF模式具有众多相关耦合模式的原因,二次开发性强),linux的软件包大致可以分为源码包和二进制包(RPM包和系统默认包),有兴趣的朋友可以去b站找一些linux教程的相关章节,可以简要了解一下linux中的软件包及其安装方式, 而源码包的安装流程如下

1. 第一步:网站下载源码包,WRF-Chem相关配套软件以及WRF-Chem模式都有公开的源码包发布,上网找一下资源下载即可
2. 第二步:在linux中解压缩源码包,并且强烈建议在一个统一的目录下安装各类软件包
3. 第三步:cd进入解压缩后的源码包,后续的操作都是在源码包的目录里面完成,很多初学linux的经常犯这个小错误
4. 第四步:进行编译,一般情况是输入./configure命令进行源码包的配置(严格来说,configure这个步骤应该叫“配置”或者“预编译”吧?),但这一步也是最容易出错,并且需要特别注意的一步,因为对于软件某些模块的启用,安装路径的指定、某些软件依赖包的指定等内容,都是要通过configure这一步去完成,关于configure指令,后文我接着补充了一下
5. 第五步:配置完成后,敲入 make 指令,系统会根据软件的makefile文件进行编译和构建
6. 第六步:之后再敲入 make check ,这个指令,这个是用于检测软件能否在当前环境正常运行,(非必须)
7. 第七步:输入指令 make install 进行软件包的安装,即进行最后的软件安装。注意,如果安装过程中有失败,或者要重新启用一下软件的某些模块,在 重新编译之前 要输入指令用 clean 命令清理之前编译生成的文件,然后进行新一次的编译(clean命令的执行方式可能会有一些不同的区别,比如 make clean ./clean 等)

8. 第八步:检查软件是否安装成功
9.  第九步:设置个人环境变量,使用软件

1.2 对于源码包的一点浅了解

在下载完一个源码包后,可以观察一下这个源码包里面的文件,其中重点可以看一下诸如readme之类的文件,我如下是以netcdf-c软件包的安装为例,展现了一下这个源码包里面的一些内容

Clip_2024-01-30_23-20-32.png

这个源码包里面的INSTALL.md文件和README.md文件就比较详细的介绍了关于这个源码包如何安装,功能模块,依赖关系等信息,可以直接把这个md文档下载下来读一下,里面基本就提到了安装过程中的注意事项,如下所示:

Clip_2024-01-30_23-24-32.png

[!important] 不是每一个源码包都是按照我上面这个例子来组织文件

1. 以上只是以netcdf-5源码包为例,举了个栗子,这个包的具体安装过程在INSTALL.md文档里面有,但并非每一个源码包都会有这么一个类似的文件(但一般都会有README的文件),所以在安装过程中要自己去找。 2. 话说回来,很多情况下我们安装一个源码包,其相关安装信息(依赖关系、功能模块等),我们一般是直接上网搜索,不会直接去查阅帮助文档,毕竟真的真的真的太多了(ㄒoㄒ) 3. 但是在安装过程中,经常性遇到一些安装失败的情况也不少见,如果多次尝试安装失败,并且直接百度/chatgpt也找不到好的解决方法的话,直接翻阅软件中的README文档会要好一点,这样给你指的路会更清晰,或许能够更加快你解决问题的速度和对知识的深度了解。

按:linux 源码包这方面知识太复杂了,先了解到这了,头大。 另, 以下代 码中,第一个xxxx代 主目录 ,第二个xxxx代表我的个人目录 ,如 ./configure --prefix=/xxxx /xxxx /apps 代表主目录下的个人目录下的apps文件夹

1.3 configure命令的一般性知识

linux各种命令对于新手小白太不友好了,因为以下安装过程中常用到configure命令,提前了解一下这个命令的一些用法,

1. 这个命令的执行方式一般都是 ./configure . 代表当前目录,./是一个路径指示符,表示当前目录(乍一看不好理解,反正记住 . 代表当前工作目录,/怎么理解,多看看win系统下的目录展示方式,应该会理解了) configure是一个可执行的脚本,大多数源码包都带有这个可执行的脚本 ./configure 代表执行当前目录下的configure脚本
2. 指定软件的安装路径 :采用 --prefix= 命令进行指定,如 ./configure --prefix=/xxxx/xxxx/apps ,该命令就代表我将这个软件安装在 /xxxx/xxxx/apps 这个路径之下,不指定路径会自动安装在当前目录之下
3. 启用源码包中的某个模块(功能/特性):采用 --enable- 命令,如 ./configure --enable-shared , 代表我启用这个源码包中的shared模块
4. 禁用源码包中的某个模块(功能/特性):采用 --disable- 命令
5. 指定包的依赖: -with-
6. 不指定包的依赖: -without- 不使用某个依赖包

上面对于包的依赖,有点没搞清,不深究了,以在安装netcdf-c过程中的configure的命令为例: ./configure --enable-shared --enable-netcdf4 CPPFLAGS=-I/usr/include LDFLAGS=-L/usr/lib --prefix=/xxxx/xxxx/apps 以上命令中

CPPFLAGS=-I/usr/include 代表编译器将会在 /usr/include 目录中查找头文件 LDFLAGS=-L/usr/bin 代表链接器将会在 /usr/lib 目录中查找库文件

为什么要用CPPFLAGS,LDFLAGS,我也不知道,再追查下去正事干不了多少了,先过~

1.4 如何检查软件包(库)是否安装成功

方法1 直接查看安装目录下的bin目录(或者lib目录或include目录)

看完上面的configure命令的一般性介绍后就会知道,在软件编译的时候,很多情况下就会指定一个安装目录,那么在这个安装目录下往往会有 bin、lib、include 三个目录,安装成功后则会在这三个目录下生成一些相关文件,所以方法1,便是安装软件以后,直接查看其中一个目录是否有生成相关文件(一般查看一个目录即可),如我安装完udunit以后,bin文件夹就生成了对应的文件:

Clip_2024-02-01_17-12-48.png

这个方法是最常用的方法,只要bin文件夹下有对应可执行文件生成,则基本代表是安装成功了的

方法2 直接执行一下所安装的软件

直接敲入命令,有些软件可以直接执行,如udunit软件,直接敲入命令(注意是udunits2)即可进入执行界面

Clip_2024-02-01_17-29-30.png

有些“软件”是不可以直接执行的,为什么呢,可能是这样的(我猜的hhh) 这个“软件”实际上它只是一个“库”,而不是一个独立的命令行工具,所以直接敲入指令是无法执行的(可能大部分都是这种情况) 也有一种可能,有些软件,在安装过程中可能会自动将可执行路径添加到不同的PATH之下,而我在当前超算下面的由于没有配置环境变量,或者没有指定执行路径,所以直接敲入这个软件命令是执行不了的 敲入指定路径的命令执行来执行文件,比如我的jasper路径放在: /xxxx/xxxx/apps/bin 当中,那么我直接敲入 /xxxx/xxxx/apps/bin/jasper 或者 /xxxx/xxxx/apps/bin/jasper --help ,则是可以执行的,那么也一般代表是安装成功了的

Clip_2024-02-01_17-49-39.png

方法3

不造了,前面两种基本就可以验证大部分软件(库)是否成功安装了,再细究下去太折腾了,继续下一步

经过以上,对软件(库)安装的大致流程与一般性知识就有了一个大概了解了,下面开始装软件

2 检查超算上的编译器和软件,设置环境变量

因为是在学校超算上面跑模式,一般超算这种大型服务器上面都有提前布置好一些比较常用的编译器和软件,所以安装软件前建议自己提前检查一下针对wrfchem模式所需要的各种软件,超算是否已经配置好了相关软件

2.1 检查编译器

which 命令来查找超算上面是否安装了相关编译器 --version 命令可查看版本号,如图,我这个学校超算上面应该是安装了gfortran编译器的,ifort和pgi编译器则没有安装,后续看来要用gfortran编译器进行编译了

Clip_2024-01-26_09-44-21.png

[!question] intel编译器,gcc编译器等编译器和'fortran'编译器(ifort,gfortran)是什么关系?

1. fortran:是一门主要用于数值和科学计算的编程语言; 2. intel编译器:intel公司开发的一个编译器,包含多个编译器系列, 如intel c++ compiler(icpc)编译器用于编译c++代码 intel fortran compiler编译器(ifort)用于编译fortran代码 等等等等 3. gcc编译器:一个开源编译套件,支持多种编程语言 如gcc c compiler(gcc)用于编译c代码 gcc c++ compiler(g++)用于编译c++代码 gnu fortran compiler(gfortran)用于编译fortran代码 4. 而ifort,gfortran编译器,则是intel和gcc编译器下,针对fortran语言的一个编译器

按:真是太复杂了,继续晕(◎ロ◎),看不懂就过,能运行起来就行(

2.2 检查相关软件

主要就是检查了一个hdf5,因为这个软件(库)使用十分广泛,一般超算上面都会装这个软件(库)

2.2.1 检查hdf5

hdf5简介:一种用于存储和管理大规模科学数据的文件格式和库,很牛并且应用广泛,绕不开,装就完事了 用如下命令检查

Clip_2024-01-26_11-01-14.png

[!question] 为什么检查netcdf4/hdf5是否存在,我要输入 which ncdump,而不是which netcdf4呢 因为 ifort 是 Intel Fortran Compiler 的主要可执行文件,而 netcdf4 是一个库(NetCDF)的名称,它包含了一系列工具,其中 ncdump 是用于查看 NetCDF 文件内容的一个工具。一般来说,编译器的可执行文件都会以编译器命名,而库的可执行文件,则会以这库里面的某些工具来执行,这里的ncdump 是 NetCDF 库提供的一个命令行工具,用于以文本形式显示 NetCDF 文件的内容(维度、变量,属性等)

上述输入 which h5dump 是有路径存在的,而在超算的bin文件夹下面,是有系列h5开头的可执行文件的,说明hdf5已经是在超算上面配置好了的

Clip_2024-02-01_18-50-18.png

2.2.2 检查netcdf

这里实际我弄错了,完成安装流程后,复盘写笔记的时候才发现这个问题,哭死

超算上面,实际上同样已经是安装好了netcdf相关库文件的, 输入 which ncdump 指令看到有路径存在的时候,就应该知道超算上应该是已经装好了netcdf系列库文件的,实际上在超算的bin目录下ls一下,也能发现基本把库文件的都装好了

Clip_2024-02-01_18-55-04.png

不过我那会还没意识到这些nc开头的文件,就代表库文件,写笔记的时候查找资料整理了一下,才发现后续要装的netcdf-c,netcdf-fortran,netcdf-cxx三个库过程中,分别主要会生成这么一些文件

库名称 安装后bin目录下生成的文件
netcdf-c ncdump, nc-confugure, nccopy, ncgen, ncgen3, nc4print
netcdf-fortran nf-configure
netcdf-cxx ncxx4-configure
说明 以上生成文件可能会随着netcdf版本的变更略有不同,但基本大差不差的
说明 netcdf-c 是 netcdf 的核心库,其他语言的接口库(如 netcdf-fortran、netcdf-python 等)依赖于netcdf-c

按:难怪安装netcdf-c后出现的可执行文件要比较多,原来是个核心库

所以说,对应安装netcdf-c,netcdf-fortran,netcdf-cxx三个库后要生成的文件,在超算目录下的bin文件夹里面基本都是已经装好了的,不需要我再去装一次了,

但实际情况是,我装完了才发现超算上面已经装好了(我恨啊),所以以下的安装步骤,是在超算上面已经有netcdf库的情况下,我又重新装了一遍,装到自己安装路径下面去了

按:多装一遍应该也没关系吧 (瞎猜的),不过可能就是环境变量配置、指定依赖的时候要麻烦点🙏,给自己加难度了,淦

2.3 设置环境变量

写完笔记的时候 才发现没写环境变量这部分的介绍,直接把我.bashrc文件中的环境变量 全部贴上来了 ,安装软件前要设置好环境变量,

安装前 要设置好如下代码中的‘User specific aliases and functions’部分的环境变量

安装后 设置好User software部分的环境变量

超算平台运行的话,一般还要 module加载一下需要用的模块 ,不同超算可能不一样,我的设置在如下代码的'compile module'部分


# User specific aliases and functionsexport CC=gccexport FC=gfortranexport CXX=g++export CPPFLAGS=-fPICexport CFLAGS=-fPICexport FCFLAGS=-fPICexport CXXFLAGS=-fPIC
# compiler modulemodule load mpich/gccexport PATH=$PATH:/opt/xxxx/xxxx/mpich
# User softwareexport LD_LIBRARY_PATH=/xxxx/xxxx/apps/lib:${LD_LIBRARY_PATH}export NETCDF=/xxxx/xxxx/appsexport PATH=/xxxx/xxxx/apps/bin:${PATH}export JASPERLIB=/xxxx/xxxx/apps/libexport JASPERINC=/xxxx/xxxx/apps/include

3 安装WRF-Chem相关软件(库)

以下所有的安装步骤进行之前,建议在个人目录下 mkdir apps 然后把安装的文件全部放入apps文件夹

3.1 安装szip

按:这个步骤后续整理的时候,实际上发现也是多余的,因为超算上的hdf5已经把这个依赖软件给启用了,如果发现hdf5没有启用这个依赖的话,可以如下操作

软件用途:这个软件是一个用于数据压缩的库,主要用于科学数据的高性能压缩,强就行了,其他不多了解了,这个软件是hdf5软件的一个依赖软件

下载 链接 [1] :https://support.hdfgroup.org/ftp/lib-external/szip/2.1.1/src/szip-2.1.1.tar.gz

因为是在超算上面运行 我的安装目录在: /xxxx/xxxx/apps/ 因为软件包都已经提前下载好了,并且把这个szip-2.1.1的压缩包已经解压到了apps目录下面 所以下面的操作是 cd szip-2.1.1 以后输入的命令

1. 输入命令 ./configure --prefix=/xxxx/xxxx/apps 即可编译该软件 ./comfigure 是一个,用于自动检测系统的配置和特性,以便为软件包生成适当的构建配置,这是安装许多源码包的第一步 --prefix=/xxxx/xxxx/apps 这是一个用于指定安装路径的配置选项,这样软件就被安装到 /xxxx/xxxx/apps 这个路径之下了 在编译过程中,界面上的输出代码中就可以看到,此时我们采用的是gcc编译器,如下

Clip_2024-01-26_15-13-31.png

[!tip] 关于安装szip的环境变量配置 实际上我测试了一下,在一个窗口配置好了临时环境变量,另一个窗口没有配置好临时环境变量,但在configure步骤时候都能够编译成功,并且输出过程中都采用的是gcc编译器,那我估计这个超算上面就是默认采用的gcc编译器

2. make 进行编译 3. make check 进行编译检查(非必须) 4. make install 进行安装

3.2 检查超算上的hdf5是否安装szip这个依赖包

由于超算上面已经安装好hdf5,但是我面临的一个问题是,我不确定这个hdf5是否把需要的依赖软件szib给安装好了,

因为我在自己电脑上装hdf5的时候,敲入的编译命令是: ./configure --enable-shared --enable-fortran --with-szib=/apps --prefix=/apps

使用这个命令是启用了szib这个软件,并指定了szip软件安装位置的。显然我在已经装好hdf5的超算上面,是不确定安装时候有没有配置好szib的,所以我需要检查一下是否配置好了,以下是检查过程

1. which h5dump 查找一下hdf5的安装位置,发现是装在/usr/bin目录下
2. 进入安装目录后, ls h5* 就可以看到许多hdf5软件包提供的许多功能模块,如下

Clip_2024-01-26_16-58-55.png

3. 使用命令 h5cc -showconfig 可以看到超算上面hdf5相关的一些配置信息,屏幕会输出一大串配置信息的内容 使用命令 h5cc -showconfig | grep szip 会显示出含szip的所有行 使用命令 h5cc -showconfig | grep -C 3 szip 会显示出szip的上下文信息
4. 使用命令 h5cc -showconfig | grep -C 3 szip 后,屏幕显示

Clip_2024-01-26_17-08-54.png

在我电脑上装好的hdf5也是这么显示的,那应该是没问题了

按:

1. 看来超算上面已经把这个szip给安装并启用好了,那么我上一步安装szip,好像也没太多必要了🤔 2. 一开始问chatgpt,它直接要我输入h5pcc -showconfig进行检查,输入这个命令行根本不行,后面才发现在软件安装目录下根本没这个h5pcc,只有h5cc,h5c++等,而这个h5cc,h5pcc等这些文件,”是 HDF5 库中的编译器包装脚本“,不太懂,不看了,有szip就行,过 3. 所以说,要去检查配置文件,应该要先看一下hd5f安装路径下是否有有关h5cc相关的一些”编译器包装脚本“,然后再去用 -showconfig 命令查看相关的配置文件

那么到这里,就是说已经确定超算上面有hdf5软件包,并且其依赖库szip也已经安装好了

3.3 安装jasper

jasper简介:在wrfchem模式处理运行过程中,jasper主要用于 解码或者编码 GRIB文件(一种用于气象数据的压缩格式),因为在WRF-Chem模式的预处理步骤中,经常性的要读取或写入GRIB文件,所以这个软件也要安装一下,下载 链接 [2] :https://www.ece.uvic.ca/~frodo/jasper/#download

安装软件的压缩包已经在 /xxxx/xxxx/apps 这个目录下面了,按照一般软件的安装流程来即可,以下是安装流程:

1. 输入命令 tar xzvf jasper-1.900.1.tar.gz 进行解压,然后cd进去 2. ./configure --prefix=/xxxxxx/xxxx/apps :(我猜的)如果就是在apps目录下操作,或不用重新指定路径了,因为我这份发布的笔记是后面复盘时候重新整理了一下,有些操作步骤和我实际有一点点的不同,为了以防万一的话,配置的时候指定一下安装路径就好了 3. make 4. make check 5. make insatll 6. 检查是否安装成功,可以在bin文件夹看,有没有这个文件,有的话代表安装成功了:

Clip_2024-02-01_14-43-19.png

3.4 安装udunits

udunits2简介:一个用于处理物理量单位和单位转换的库,简而言之就是单位换算与转换的, 下载 链接 [3] :https://www.unidata.ucar.edu/software/udunits/

安装软件的压缩包已经在 /xxxxxx/xxxx/apps 这个目录下面了,按照如上的安装流程来即可

1. 输入命令 tar xzvf udunits-2.2.26.tar.gz 进行解压 按:突然发现tar命令后面加不同的参数,比如xzvf -xf等会有一些不同的显示过程,有兴趣可以去测试一下,还蛮有意思的 2. cd udunits-2.2.26 进入软件包目录 3. ./configure --enable-shared -prefix=/xxxxxx/xxxx/apps 配置软件包 --enable-shared代表的是启用这个软件中的shared模块,本文的“1.3 configure命令的一般性知识”有提到 4. make 5. make check 6. make install 7. 经过以上可以安装完成,我在学校超算上面可以完成,如果出现安装失败的情况,仔细观察一下error的提示信息,遇到过因为权限不够,要请求服务器管理员帮忙安装的情况 8. 检查是否安装成功,有如下方法 直接敲入udunits2命令,会运行这个程序,如图

Clip_2024-01-29_15-40-32.png

ls /xxxx/xxxx/apps/bin 在这个软件安装目录下的bin文件夹下面,也会有这个可执行程序

按: bin文件夹一般都是放可执行文件的,这里面有文件的话,那我在终端是可以执行这些文件的,但是超算上面已有的hdf5那些软件包显示是不会在我的apps下面的,看来是不是要通过环境变量设置的方法来调用🤔

3.5 安装netcdf-c

netcdf-c软件简介:netcdf(常说的nc文件),是一种数据格式和用于访问和操作这些文件的工具和库,netcdf-c是netcdf的c语言接口和库, 官网 [4] 可以直接下载安装包(含netcdf-fortran,netcdf-c++等)

同样,压缩包已经放在相应目录里面了,下面的操作步骤是编译开始直接执行,默认已经解压,并且cd到了解压的文件夹(netcdf-c-4.8.1 )里面去了

1. ./configure --enable-shared --enable-netcdf4 CPPFLAGS=-I/usr/include LDFLAGS=-L/usr/lib --prefix=/xxxx/xxxx/apps 进行软件编译 注意一下上述代码中的CPPFLAGS和LDFAGS,是用来指定依赖的,但是由于我这是在超算上面装,所以路径一定要改
2. 接下来分别就是 make make check make install 简单,不记录了
3. 检查netcdf-c是否安装成功
直接检查安装目录下是否有ndtcdf-c的相关文件,可以输入指令 ls /xxxx/xxxx/apps/bin , /xxxx/xxxx/apps/lib , /xxxx/xxxx/apps/include 这三个bin、lib、include文件夹是分别安装软件的可执行文件、共享库、头文件信息的(具体百度) ,如我输入如下指令后出现了一些netcdf的相关文件

Clip_2024-01-29_17-57-27.png

此外我发现输入 which ncdump 也会弹出界面

image.png

经过检查,应该是已经安装成功了的

[!NOTE] 关于netCDF的一点补充 这是一种数据格式,同时也是也是支持创建、访问和共享这一数据格式的函式库。“netCDF(网络公用数据格式)是用于面向阵列数据访问的一组接口,和针对C、Fortran、C++、Java和其他语言的一套自由发行的数据访问库”。

按:看上面最后那句话,应该可以理解为什么netcdf后面会跟一些c、fortran、cxx等后缀了,比如这里安装的netcdf-fortran、以及随后安装的netcdf-fortran、netcdf-cxx等“软件”了,我感觉应该称为“访问库”或者“函数库”更合适一点,意思就是在我的目录下面安装一个能够用不同程序(c,fortran,c++等)接口,去访问netcdf文件的一个“库”(所以在有关netcdf的介绍中都说是一个“开放标准”)

再按:软件安装过程中,这些“软件包”“源码包”“函数库”“访问库”等诸如此类的概念太多了,迷

3.6 安装netcdf-fortran

netcdf-fortran软件简介:这是一个提供fortran程序接口的库,用于读写nc文件,结合上文去理解这个函数库,不多介绍了 安装过程和上面安装netcdf-c的流程一样,需要注意的是

1. export LD_LIBRARY_PATH=/xxxx/xxxx/apps/lib:$LD_LIBRARY_PATH ,需要使用这个命令把环境变量配置一下 2. 编译的时候使用命令: ./configure --enable-shared CPPFLAGS=-I/xxxxxx/xxxx/xxxx/include LDFLAGS=-L/xxxx/xxxx/apps/lib --prefix=/xxxx/xxxx/apps 3. 其他步骤类似,不记录了 4. 检查是否安装成功 在bin文件夹下,看是否有这个

Cl ip_2024-02-01_10-15-01.png

3.7 安装netcdf-cxx

netcdf-cxx软件简介:cxx就是c++,也是一个软件库,前面都提了,不多说了 安装过程和之前一样,命令也都一样,不记录了

检查是否安装成功 看到这个,则代表安装成功了

Clip_2024-02-01_14-24-23.png

3.8 安装libpng

libpng简介:这个软件主要是在wrfchem运行过程中,进行一些可视化操作时候要用到的一个库,比如将一些可视化输出保存为PNG文件等使用场景,这不是wrfchem编译和运行的必备库,但是有利于可视化一些输出结果, 官网 [5] 在此:http://www.libpng.org/

安装过程(从configure开始)

./configure --enable-shared --prefix=/xxxx/xxxx/apps make make install

检查是否安装成功,有则代表安装成功:

Clip_2024-02-01_14-49-31.png

3.9安装ncview

下载链接:https://cirrus.ucsd.edu/ncview/

安装过程(从configure开始)

./configure --prefix=/xxxx/xxxx/apps make make install

3.10 安装后的软件设置环境变量

见前文 2.3部分


总结:

  1. 笔记写得可能有点乱,一是确实折腾了很久,二是由于安装过程比较繁琐,我也不是一次性安装完的,前前后后进行修改的时候,可能会有一些疏忽,三是每次ob上写完,转换到公众号总是有些格式bug,调整起来太麻烦了,格式啥的就不管了,如果对这个模式和linux有所了解的朋友,看下来应该问题也不大,小白学习的话也能给一个参考

  2. linux上的软件安装,太依赖本地计算机或者服务器的环境了,所以遇到的问题可能五花八门,多观察error,慢慢排查

  3. 在linux上安装wrfchem还有一些比较有益的中文教程,在网络上搜索关键词“WRFlinux学习笔记——从零开始”;“兰溪之水 WRF模式入门指南”;“安装WRF模式3.8.1操作记录”;“WRFV2.2中文安装指南”等也能找到一些不少的有益资源,感恩各位大佬

  4. 另,本文很多内容的引申介绍,是在chatgpt的帮助下完成的,ai时代yyds,虽难免也有错误,但也解惑不少

  5. 如果上文有错误,不妥之处,欢迎大佬来带我,反正我也懂(是)得(个)不(小)多(白)

References

[1] 链接: https://support.hdfgroup.org/ftp/lib-external/szip/2.1.1/src/szip-2.1.1.tar.gz
[2] 链接: https://www.ece.uvic.ca/~frodo/jasper/#download
[3] 链接: https://www.unidata.ucar.edu/software/udunits/
[4] 官网: https://downloads.unidata.ucar.edu/netcdf/
[5] 官网: http://www.libpng.org/








请到「今天看啥」查看全文