WRF安装教程
官网地址:Compiling WRF
System Environment Tests:按照官网操作
- Building Libraries
Intel编译器安装
oneapi
管理员安装修改变量环境:vi /etc/profile
安装完成后make报错:
ld:/opt/intel/oneapi/compiler/2022.2.1/linux/compiler/lib/intel64_lin/libirc.a(fastmemcpy.c.o): unrecognized relocation (0
升级链接库ld至2.27以上
# setvars.sh 脚本通过在各自的 oneAPI 文件夹中找到每个 <install-dir>/latest/env/vars.sh 脚本来设置用于 oneAPI 工具包的环境变量。
source /opt/intel/oneapi/setvars.sh intel64 --force > /dev/null
# 为了避免每次打开一个新的终端都需要重新运行脚本,可以在 ${HOME}/.bashrc中添加一句 source /opt/intel/oneapi/setvars.sh intel64
# 运行这句后oneAPI会添加所有工具包,可能会污染你的工作环境,比如我就遇到了 intelpython 影响 rospy 的问题,可以写一个 config.txt 文件自定义加载的环境
sudo vi /opt/intel/oneapi/config.txt # 在指定目录下新建了一个配置文件,内容如下
intelpython=exclude # 这句排除了intelpython,可以自己进行设置,这里只是举了我的例子
# 那么source语句需要进行适当修改如下
source /opt/intel/oneapi/setvars.sh --config="/opt/intel/oneapi/config.txt"
## 其他例子如下
mkl = 1.1 # 指定使用的mkl版本,如果不指定默认使用最新版本
default = exclude # 指定默认为排除所有,如果不设置的话默认添加所有工具包
## 去除命令行echo输出
# source setvars.sh后每次命令行会出现很多反馈,如果像我一样强迫症不希望显示的话可以这样修改source语句
source /opt/intel/oneapi/setvars.sh --config="/opt/intel/oneapi/config.txt" > /dev/null
# /dev/null 是类Unix系统中的一个特殊文件设备,他的作用是接受一切输入它的数据并丢弃这些数据。通常被当做垃圾桶来用。
库安装参照官网教程及flexpart安装:需要注意的是HDF5要做些更改。
vim ~/.bashrc
export CC=icc
export FC=ifort
export CXX=icpc
export CFLAGS='-O3 -fPIC -ip -no-prec-div'
export CPPFLAGS='-O3 -fPIC -ip -no-prec-div'
export FFLAGS='-O3 -fPIC -ip -no-prec-div'
export CXXFLAGS='-O3 -fPIC -ip -no-prec-div'
export CPP='icc -E'
export CXXCPP='icpc -E'
source ~/.bashrc
ZLIB:
下载
http://www.zlib.net/
wget http://www.zlib.net/zlib-1.2.11.tar.gz
wget http://www.zlib.net/current/zlib.tar.gz
安装
mkdir -p /data/zhangl/apps/zlib
tar -zxvf zlib-1.2.11.tar.gz
cd zlib-1.2.11
./configure --prefix=/data/zhangl/apps/zlib
make install
检查
user012/work@Lnode5:~/software/Packages$ tree /data/zhangl/apps/zlib
├── include
│ ├── zconf.h
│ └── zlib.h
├── lib
│ ├── libz.a
│ ├── libz.so -> libz.so.1.2.11
│ ├── libz.so.1 -> libz.so.1.2.11
│ ├── libz.so.1.2.11
│ └── pkgconfig
│ └── zlib.pc
└── share
└── man
└── man3
└── zlib.3
配置环境变量
vim ~/.bashrc
#ZLIB
export ZLIB=/data/zhangl/apps/zlib
export LD_LIBRARY_PATH=$ZLIB/lib:$LD_LIBRARY_PATH
source ~/.bashrc
Compiler error reporting is too harsh for ./configure (perhaps remove -Werror).
** ./configure aborting.
SZIP
下载
https://support.hdfgroup.org/doc_resource/SZIP/
wget https://support.hdfgroup.org/ftp/lib-external/szip/2.1.1/src/szip-2.1.1.tar.gz
安装
mkdir -p /data/zhangl/apps/szip
tar -zxvf szip-2.1.1.tar.gz
cd szip-2.1.1
./configure --prefix=/data/zhangl/apps/szip
make install
检查
user012/work@Lnode5:~/software/Packages$ tree /data/zhangl/apps/szip
/data/zhangl/apps/szip