1 安装Intel编译器、OpenMPI

Intel编译器安装的是:parallel_studio_xe_2020_update4_cluster_edition
OpenMPI使用Intel 编译器安装 (CC=icc FC=ifort CXX=icpc)
以上自行上网搜索安装教程。

2 一个脚本实现安装所有库

依赖关系为:
netCDF-Fortran -> netCDF-c -> zlib, szip, HDF5
NCO -> netCDF, antlr, udunits
Ncview -> netCDF, libpng, X11, udunits

  1. 脚本中的版本号根据实际情况更改,注意版本依赖问题,如 netCDF-c 与 HDF5 兼容问题
  2. antrl2.7.7的bug
#!/bin/bash
#####################################################
# the tar.gz file should be decompressed in $SPATH
# all packages are installed in $SPATH/intel-software
#####################################################export CC=mpicc
export CXX=mpic++
export FC=mpifort
export F90=mpifort
export F77=mpifort
export MPIF90=mpifort
export MPIF77=mpifort
export MPICC=mpicc
export MPICXX=mpic++SPATH=/home/mppadmin/software #software path, the tar.gz file should be decompressed there
cd $SPATH
if [ -f .env ];thenrm .env
fi
touch .env# netCDF## zlib
export ZLIBPATH=$SPATH/intel-software/zlib-1.2.8
cd $SPATH/zlib-1.2.8
./configure --prefix=ZLIBPATH --eprefix=$ZLIBPATH
make clean;make;make install;make check;make clean
CMD="export LD_LIBRARY_PATH=$ZLIBPATH/lib:$LD_LIBRARY_PATH"
$CMD;echo $CMD>>$SPATH/.env## szip
export SZIPPATH=$SPATH/intel-software/szip-2.1
cd $SPATH/szip-2.1
./configure --prefix=$SZIPPATH --build=x86_64 CFLAGS="-O2 -fPIC" FCFLAGS="-O2 -fPIC" CXXFLAGS="-O2 -fPIC"
make;make install;make check;make clean
CMD="export LD_LIBRARY_PATH=$SZIPPATH/lib:$LD_LIBRARY_PATH"
$CMD;echo $CMD>>$SPATH/.env## hdf
cd $SPATH/hdf5-hdf5-1_10_6
export HDFPATH=$SPATH/intel-software/hdf5-1.10.6
./configure --prefix=$HDFPATH --enable-fortran --enable-parallel --with-zlib=$ZLIBPATH --with-szlib=$SZIPPATH CFLAGS="-O2 -fPIC" FCFLAGS="-O2 -fPIC" CXXF                                                                                                                                                                                                                      LAGS="-O2 -fPIC"
make clean;make -j16;make install;make clean
CMD="export LD_LIBRARY_PATH=$HDFPATH/lib:$LD_LIBRARY_PATH"
$CMD;echo $CMD>>$SPATH/.env
CMD="export PATH=$HDFPATH/bin:$PATH"
$CMD;echo $CMD>>$SPATH/.env
source $SPATH/.env## netcdf-c
cd $SPATH/netcdf-c-4.3.3
export NCPATH=$SPATH/intel-software/netcdf-4.3.3
./configure --prefix=$NCPATH --enable-netcdf4 --enable-extra-example-tests --enable-parallel-tests --enable-logging --enable-extra-tests --enable-large-f                                                                                                                                                                                                                      ile-tests --disable-dap-remote-tests --disable-dap LDFLAGS=" -L$HDFPATH/lib -L$SZIPPATH/lib/ -L$ZLIBPATH/lib/" LIBS=" -lhdf5 -lhdf5_hl -lhdf5hl_fortran -                                                                                                                                                                                                                      lhdf5_fortran -lz -lsz -lcurl" CPPFLAGS=" -I$HDFPATH/include -I$ZLIBPATH/include -I$SZIPPATH/include"
make clean;make -j16;make install;make check;make clean
CMD="export LD_LIBRARY_PATH=$NCPATH/lib:$LD_LIBRARY_PATH"
$CMD;echo $CMD>>$SPATH/.env
CMD="export PATH=$NCPATH/bin:$PATH"
$CMD;echo $CMD>>$SPATH/.env## netcdf-fortran
cd $SPATH/netcdf-fortran-4.4.1
./configure --prefix=$NCPATH LDFLAGS=" -L$HDFPATH/lib -L$SZIPPATH/lib/ -L$ZLIBPATH/lib/ -L$NCPATH/lib" LIBS=" -lhdf5 -lhdf5_hl -lhdf5hl_fortran -lhdf5_fo                                                                                                                                                                                                                      rtran -lz -lsz -lcurl -lnetcdf" CPPFLAGS=" -I$HDFPATH/include -I$SZIPPATH/include -I$ZLIBPATH/include -I$NCPATH/include"
make clean;make -j16;make install;make check;make clean
source $SPATH/.env# NCO## udunits
cd $SPATH/udunits-2.2.28
export UDPATH=$SPATH/intel-software/udunits-2.2.28
export LIBINC=$SPATH/X11
./configure --prefix=$UDPATH CPPFLAGS=-I$LIBINC LDFLAGS=-L$LIBINC LIBS=" -lexpat"
make clean;make -j16;make install;make clean
CMD="export LD_LIBRARY_PATH=$UDPATH/lib:$LD_LIBRARY_PATH"
$CMD;echo $CMD>>$SPATH/.env
source $SPATH/.env## antlr
cd $SPATH/antlr2-master
export ATPATH=$SPATH/intel-software/antlr-2.7.7
./configure --prefix=$ATPATH --disable-csharp --disable-java --disable-python
make clean;make;make install;make clean
CMD="export LD_LIBRARY_PATH=$ATPATH/lib:$LD_LIBRARY_PATH"
$CMD;echo $CMD>>$SPATH/.env
source $SPATH/.env## nco
cd $SPATH/nco-5.0.6
export NCOPATH=$SPATH/intel-software/nco-5.0.6
./configure --prefix=$NCOPATH CPPFLAGS=-I$ATPATH/include/ LDFLAGS=-L$ATPATH/lib LIBS=" -lantlr"  NETCDF_INC=$NCPATH/include NETCDF_LIB=$NCPATH/lib NETCDF_ROOT=$NCPATH ALTLR_ROOT=$ATPATH UDUNITS2_PATH=$UDPATH --enable-udunits2
make clean;make;make install;make clean
CMD="export LD_LIBRARY_PATH=$NCOPATH/lib:$LD_LIBRARY_PATH"
$CMD;echo $CMD>>$SPATH/.env
CMD="export PATH=$NCOPATH/bin:$PATH"
$CMD;echo $CMD>>$SPATH/.env
source $SPATH/.env# NCVIEW
cd $SPATH/ncview-2.1.7
export NCVPATH=$SPATH/intel-software/ncview-2.1.7
./configure --prefix=$NCVPATH --with-nc-config=$NCPATH/bin/nc-config --with-udunits2_incdir=$UDPATH/include --with-udunits2_libdir=$UDPATH/lib --with-png_incdir=$SPATH/libpng-1.6.37/include --with-png_libdir=$SPATH/libpng-1.6.37/lib CPPFLAGS=-I$SPATH LDFLAGS=-L$SPATH/X11 --x-includes=$SPATH --x-libraries=$SPATH --with-x
make clean;make;make install;make clean
CMD="export PATH=$NCVPATH/bin:$PATH"
$CMD;echo $CMD>>$SPATH/.env
source $SPATH/.env

3 环境变量

最终~/.bashrc为:

source /home/mppadmin/software/intel/parallel_studio_xe_2020/compilers_and_libraries_2020/linux/bin/compilervars.sh -arch intel64 -platform linux
export LD_LIBRARY_PATH=/home/mppadmin/software/intel-software/udunits-2.2.28/lib:/home/mppadmin/software/libpng-1.6.37/lib:$LD_LIBRARY_PATH
MPI_HOME=/home/mppadmin/software/intel-software/openmpi-4.0.7
export PATH=${MPI_HOME}/bin:$PATH
export LD_LIBRARY_PATH=${MPI_HOME}/lib:${MPI_HOME}/lib/openmpi:$LD_LIBRARY_PATH
export MANPATH=${MPI_HOME}/share/man:$MANPATH
export LD_LIBRARY_PATH=/home/mppadmin/software/intel-software/szip-2.1/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/home/mppadmin/software/intel-software/zlib-1.2.8/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/home/mppadmin/software/intel-software/hdf5-1.10.6/lib:$LD_LIBRARY_PATH
export PATH=/home/mppadmin/software/intel-software/hdf5-1.10.6/bin:$PATH
export LD_LIBRARY_PATH=/home/mppadmin/software/intel-software/netcdf-4.3.3/lib:$LD_LIBRARY_PATH
export PATH=/home/mppadmin/software/intel-software/netcdf-4.3.3/bin:$PATH
export PATH=/home/mppadmin/software/intel-software/nco-5.0.6/bin:$PATH
export LD_LIBRARY_PATH=/home/mppadmin/software/intel-software/parallel-netcdf-1.8.1/lib:$LD_LIBRARY_PATH
export PATH=/home/mppadmin/software/intel-software/parallel-netcdf-1.8.1/bin:$PATH
export LD_LIBRARY_PATH=/home/mppadmin/software/X11:$LD_LIBRARY_PATH
export PATH=/home/mppadmin/software/intel-software/ncview-2.1.7/bin:$PATH

4 归档

上面一个可行的安装方案,保存到了 github 上,可以参考

一个脚本完成安装netCDF、NCO、Ncview库相关推荐

  1. 【Ubuntu】安装python环境(一个脚本编译安装任意版本)

    前言 最近弄了个新装的Ubuntu系统,尽管里面有自带的python3环境,但是没有我想要用的python版本环境,看到网上的各种编译安装,都是各种繁琐的步骤,其实也不利于一些计算机基础比较差的同学安 ...

  2. Linux脚本自动安装软件,一个快速自动安装Apache及其相关软件的Shell脚本

    一个快速自动安装Apache及其相关软件的Shell脚本 文:王文俊 email:wwj99001@sina.com wwj99001@sohu.com 成文时间:2002年6月1日 Apache是一 ...

  3. Intelnbsp;Fortran安装netcdf库amp;n…

       一直头痛于win7下的compaq fortran兼容性问题,安装intel fortran 10.1 + vs2008,接下来遇到了,compaq fortran 安装netcdf库的方法,无 ...

  4. sklearn库安装_没有依赖库也能跑机器学习模型!推荐一个强大工具m2cgen

    晓查 发自 凹非寺 量子位 报道 | 公众号 QbitAI m2cgen(Model 2 Code Generator)是一个轻量级代码生成器,它可以将训练好的机器学习模型转换成无需依赖库的本地代码. ...

  5. python怎么安装requests库-Python3.6安装及引入Requests库的实现方法

    本博客可能没有那么规范,环境之类的配置.只是让你直接开始编程写python. 至于各种配置网络上有多种方法. 本文仅代表我的观点的一种方法. 电脑环境:win10 64位 第一步:下载python. ...

  6. ae万能弹性表达式_AE脚本精品表达式合集效果库 iExpressions 3.1.006【资源分享1453】...

    AE特效PR剪辑C4D影视后期 全世界只有不到1%的人关注了 你是个很特别的人 AE影视后期定期推送「AE+PR+C4D 影视特效合成 婚庆剪辑调色 电视广告包装 微电影制作 SpeedGrade达芬 ...

  7. python用代码安装3.6_Python3.6安装及引入Requests库的实现方法

    本博客可能没有那么规范,环境之类的配置.只是让你直接开始编程写python. 至于各种配置网络上有多种方法. 本文仅代表我的观点的一种方法. 电脑环境:win10 64位 第一步:下载python. ...

  8. python crypto安装_关于python安装pip及crypto库

    Capture The Flag (CTF) 常用到的crypto库,有很多技术人员不知道怎么安装.而crypto库已经有三五年没有团队维护更新,网络上很多旧版安装方法不可用.本篇记录了作者安装pip ...

  9. 编写一个脚本判断某个用户是否处在活动模式_使用 TypeScript 编写爬虫

    我们需要的数据多种多样,不可能什么都买,就算有钱,有的数据也不一定能买到.这个时候要获取这些数据,就要靠爬虫了. 爬虫界大佬很多,开源库和框架数不胜数.理论上,凡是能方便连接互联网的编程语言,都适合用 ...

最新文章

  1. LeetCode刷题记录15——21. Merge Two Sorted Lists(easy)
  2. iOS事件处理,看我就够了~
  3. GitHub代码一键转VS Code:只需+1s
  4. bash_常用bash命令
  5. “cmake 点点”表示在上一级目录(CMakeLists.txt所在目录)编译
  6. java 之绘图技术
  7. C语言模块化编程的例子
  8. validate+jquery+ajax表单验证
  9. ios审核4.3被拒,快速通过IOS4.3问题
  10. .NET 6 Preview 2 发布
  11. Sentinel(六)之集群流控
  12. ejb 2.1 jboss_JBoss AS7 JNDI和EJB 3.1命名更改
  13. chrome浏览器解决ajax跨域问题
  14. Unity3D 物体移动方法总结
  15. WebStorm 代码文字发虚模糊 - 解决篇
  16. html 放上去动画停止,使用jQuery的animate()+CSS样式实现动画效果及stop()停止动画
  17. mysql 查看内核版本命令_Linux查看版本命令问题
  18. 51单片机c语言脉冲计数实验报告,单片机计数器实验报告.doc
  19. Pycharm进入debug模式后一直显示collecting data解决方法
  20. mac air 2019安装双系统

热门文章

  1. 方差、协方差、标准差、均方差、均方根值、均方误差、均方根误差
  2. While与do...while循环
  3. 一张图告诉大家,为啥胖了气质会垮?
  4. NCBI数据库—上传16S rRNA测序数据
  5. CSS overflow 属性(琐碎知识点整理)
  6. 《数据结构与算法》—— O(3N)=O(N) ?
  7. python isnumeric函数用法_Python 字符串 isnumeric() 使用方法及示例
  8. 从真香到闭口不谈,云桌面在学校到底经历了什么?
  9. 关于CM3内核的PSP和msp
  10. Educoder/头歌JAVA——HTML:表格