文章目录

  • 安装包链接(也是我当前使用的版本):
  • 一、安装zlib
  • 二、安装szip
  • 三、安装hdf5
  • 四、安装netcdf-c
  • 五、安装netcdf-fortran
  • 六、配置环境变量

  在ASC19的地球气候系统(CESM)环境配置中,安装时间和安装步骤最复杂的数学库必须是Netcdf库。楼主足足研究了五天。下面都是使用源码安装,因为优化CESM要比较不同版本的库。
  NetCDF全称为network Common Data Format,中文译法为“网络通用数据格式”,对程序员来说,它和zip、jpeg、bmp文件格式类似,都是一种文件格式的标准。netcdf文件开始的目的是用于存储气象科学中的数据,现在已经成为许多数据采集软件的生成文件的格式。
  注意:
  1.netcdf4.2以上的版本c库和fortran库分开,要先安装netcdf-c,然后再安装netcdf-fortran。
  2.要注意编译安装库时候的编译器要和你以后编译你的Fortran代码使用的编译器一致,否则以后在编译Fortran源代码其中用到netcdf库时会出错。
  3.需要先安装szip zlib hdf5,解决软件依赖性问题

安装包链接(也是我当前使用的版本):

netcdf-c-4.4.1.tar.gz
https://github.com/Unidata/netcdf-c/releases/tag/v4.4.1

netcdf-fortran-4.4.4.tar.gz
https://github.com/Unidata/netcdf-fortran/releases/tag/v4.4.4

openmpi4.0(本节不介绍,详细信息在以下链接)
https://blog.csdn.net/weixin_41890971/article/details/86766492

szip-2.1.1.tar.gz
https://support.hdfgroup.org/doc_resource/SZIP/

zlib-1.2.11.tar.gz
http://www.zlib.net/

hdf5-1.10.4.tar.gz
https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.10/hdf5-1.10.4/src/

一、安装zlib

1.解压 tar -zxvf zlib-1.2.11.tar.gz
2.配置安装信息

env \
CC="gcc -fPIC" \
CFLAGS="-O2" \
CXX="g++ -fPIC" \
CXXFLAGS="-O2" \
./configure \
–prefix=/home/CESM_Share/netcdf_intel \
--sharedlibdir=/home/liangziquan/intel/lib/intel64

可以使用 ./configure --help来查看选项。后面要用Intel编译器安装Netcdf,所以链接了Intel库。
3.编译. make
4.检查. make check
5.安装. make install
安装完成之后会在$netcdf_intel这个目录下生成三个文件lib include share

二、安装szip

1.解压 tar -zxvf szip-2.1.1.tar.gz
2.配置安装信息.

env \
CC="gcc -fPIC" \
CFLAGS="-O2" \
CXX="g++ -fPIC" \
CXXFLAGS="-O2" \
./configure \
–prefix=/home/CESM_Share/netcdf_intel \
--sharedlibdir=/home/liangziquan/intel/lib/intel64

可以使用 ./configure --help来查看选项。
3.编译. make
4.检查. make check
5.安装. make install

三、安装hdf5

使用netcdf-4特性需要hdf5来支持,这个特性支持2G以上的文件。
1.解压 tar -zxvf hdf5-1.10.4.tar.gz
2.配置安装信息.

env \
CFLAGS="-O3 -fPIC" \
CXXFLAGS="-O3 -fPIC" \
./configure \
–prefix=/home/CESM_Share/netcdf_intel \
--with-zlib=/home/CESM_Share/netcdf_intel \
--with-szlib=/home/CESM_Share/netcdf_intel

(–with-parallel,如果需要并行io支持,加上这参数)
3.编译 make
4.检查编译信息 make check
5.安装 make install

四、安装netcdf-c

1.解压 tar -zxvf netcdf-4.4.1.tar.gz
2.配置安装信息

./configure \
CC=icc \
CXX=icpc \
FC=ifort \
F90=ifort \
F77=ifort \
CFLAGS="-g -O3 -fPIC" \
CXXFLAGS="-g -O3 -fPIC" \
CPPFLAGS=-I/home/CESM_Share/netcdf_intel/include \
LDFLAGS=-L/home/CESM_Share/netcdf_intel/lib \
--disable-dap \
–prefix=/home/CESM_Share/netcdf_intel

3.编译 make
4.编译信息检查 make check
5.安装 make install

五、安装netcdf-fortran

1.告知库文件位置.终端中输入

export LD_LIBRARY_PATH=/home/CESM_Share/netcdf_intel/lib:$LD_LIBRARY_PATH

2.解压tar -zxvf netcdf-fortran-4.4.4.tar.gz
3.配置安装信息.

./configure \
CC=icc \
CXX=icpc \
FC=ifort \
F90=ifort \
F77=ifort \
CFLAGS="-g -O3 -fPIC" \
CXXFLAGS="-g -O3 -fPIC" \
CPPFLAGS=-I/home/CESM_Share/netcdf_intel/include \
LDFLAGS=-L/home/CESM_Share/netcdf_intel/lib \
--disable-dap \
–prefix=/home/CESM_Share/netcdf_intel

如果没有输入 --disable-dap的话,要预先安装curl。dap应该是用于远程数据处理相关的,这里不安装也行。
4.编译 make
5.检查 make check
6.安装 make install

六、配置环境变量

1.终端中输入 vim ~/.bashrc 按i进入插入模式,输入如下信息

###############netcdf4.4_intel#########################
export NETCDF=/home/CESM_Share/netcdf_intel
export PATH=\$NETCDF/bin:$PATH
export LD_LIBRARY_PATH=\$NETCDF/lib:$LD_LIBRARY_PATH
export CPPFLAGS='-I/home/CESM_Share/netcdf_intel/include'
export LDFLAGS='-L/home/CESM_Share/netcdf_intel/lib'

输入完成保存退出(先按esc键,然后输入:wq保存退出)

2.重新登录,使环境变量生效;使用source也可以,但我选择exit。

CESM优化——Intel编译器编译安装NetCDF库(C+Fortran)相关推荐

  1. mysql netcdf_Linux下用Intel编译器编译安装NetCDF-Fortan库(4.2以后版本)

    本来这个问题真的没必要写的,可是真的困扰我太久%>_ 首先,最权威清晰的安装文档还是官方的: 那这个文档最开始就告诉我们,自NetCDF库4.2版本以后,Fortran的库和C的库就要分开bui ...

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

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

  3. php5.6.30环境报错Call to undefined function ImageCreate() 编译安装 gd库

    php5.6.30环境报错Call to undefined function ImageCreate() 编译安装 gd库发现php5.6.30没有加载gd库[root@cn_vs_web04:/u ...

  4. 烂泥:centos单独编译安装gd库

    本文首发于烂泥行天下. 这几天一直在弄一个商城系统,该系统的源码及数据库都已经上传并创建完毕.但是在安装该系统时,却提示缺少gd库.如下: 使用php探针查看,发现php确实没有安装gd库.如下: 目 ...

  5. linux如何编译boost指定库,linux下编译安装boost库

    linux下编译安装boost库 先看一下系统环境 Linux o-pc 3.19.0-22-generic #22-Ubuntu SMP Tue Jun 16 17:15:15 UTC 2015 x ...

  6. linux编译pcre生成动态链接库,Linux下编译安装PCRE库

    最近在学习nginx,nginx rewrite依赖于PCRE库,所以需要在linux系统中编译安装PCRE库.具体步骤如下: 1.下载PCRE包 首先去官网下载pcre的安装包 如果通过FTP的方式 ...

  7. centos php gd库,Centos 编译安装GD库

    详细编译安装GD库整个过程,让php对更多图形方面gif jpg(jpeg) png wbmp xml 和 ttf字体 的支持. 我先启动CentOS5.3 Linux 可以说如果要配置一台LAMP服 ...

  8. CentOS7下编译安装libmodbus库

    CentOS7下编译安装libmodbus库 下载libdmodbus源代码 编译安装lidmodbus 测试 参考资料 下载libdmodbus源代码 libmodbus官网下载页面如下图所示: 可 ...

  9. Qt5 Windows10编译安装QtXlsx库

    Qt5 Windows10编译安装QtXlsx库 大家都知道QtXlsx无需依赖office办公组件,大体的说就是针对Excel表格处理包括读.写等功能,这里主要演示QtXlsx库的编译和安装. 一. ...

  10. linux检查是否安装proc编译器,编译安装 GCC 4.9并验证使用

    编译安装 GCC 4.9并验证使用 1. 准备环境(GCC 编译器) CentOS 6.3 cat /proc/version Linux version 2.6.32-279.el6.x86_64 ...

最新文章

  1. 学习RPG Maker MZ开发创建并发布PC和移动端游戏
  2. 指针应用-----链表二
  3. HTTP请求常见状态码
  4. dart语法中list相关详解
  5. 用pytorch及numpy计算成对余弦相似性矩阵,并用numpy实现kmeans聚类
  6. 有抱负/初级开发人员的良好习惯-避免使用的习惯
  7. 设计师交流平台!!!
  8. opencv打开的图片应用于nn.Conv2d()(一)(H, W, C)转为 (C, H, W)
  9. junit测试给定默认的jvm参数
  10. 不规则形状 前端_精度提升第一步:形状各异测区的像控点布设方案
  11. js日历控件源代码下载
  12. 虚拟机安装MAC-OS系统开发非常卡。使用beamoff.zip优化教程
  13. vscode格式化代码快捷键
  14. 算法分析与设计(NPC问题)
  15. [软件更新]LeadBBS 6.0正式发布(更新日志和下载)
  16. 常见编程错误及解决方法,避免踩雷
  17. 微信小程序怎么实现防止截屏
  18. 风云编程python基础语法(6)
  19. 你看到的是乱,我看到的是月亮,如是而已。
  20. zeppelin源码分析(1)——编译、调试和maven modules分析

热门文章

  1. 奥克兰大学计算机科学专业学费,奥克兰大学各专业学费
  2. 提供给JAVA程序员的QQ群
  3. 网站被攻击怎么办如何解决
  4. Stata:GMM-简介及实现范例
  5. Axure的灯箱效果说明
  6. 申请计算机助理的英语作文,助理面试英文自我介绍范文(通用5篇)
  7. 现金红包、裂变红包、企业付款
  8. 江苏考生小高考计算机网,江苏小高考
  9. bugkuCTF—杂项—旋转跳跃
  10. 网易服务器维护,网易:方便玩家 各大区服务器维护详细时间表列