1. 升级gfortran 7

默认gortran的版本是4.8

gfortran --version

GNU Fortran (GCC) 4.8.5 20150623 (Red Hat 4.8.5-39) Copyright © 2015
Free Software Foundation, Inc.

安装calpuff需要5.4以上的版本,这里通过安装gcc 7 来安装gfortran7

sudo yum install centos-release-scl
sudo yum install devtoolset-7-gcc*
scl enable devtoolset-7 bash
gfortran --version

GNU Fortran (GCC) 7.3.1 20180303 (Red Hat 7.3.1-5) Copyright © 2017
Free Software Foundation, Inc.

2. 安装netcdf

CALWRF需要netcdf,所以先确定本机的netcdf安装目录以及版本

which ncdump

/usr/local/netcdf/bin

ncdump


netcdf library version 4.7.0

如果以上命令没有返回,则说明没有安装netcdf,可通过yum安装

yum install netcdf

3. 编译CALWRF

目前最新的稳定版是 2.0.3: 下载地址:
http://www.src.com/calpuff/download/Mod7_Files/CALWRF_v2.0.3_L190426.zip
下载好后解压,进入解压目录,将文件名全都转换为小写,然后用gfortran进行编译:
如果netcdf的版本是3

gfortran -L/usr/local/netcdf/lib -lnetcdf -I/usr/local/netcdf/include -o calwrf.exe calwrf.f

如果netcdf的版本是4

gfortran -L/usr/local/netcdf/lib -lnetcdff -I/usr/local/netcdf/include -o calwrf.exe calwrf.f

4. 编译CALMET

目前最新的稳定版是 6.5.0: 下载地址:
http://www.src.com/calpuff/download/Mod7_Files/CALMET_v6.5.0_L150223.zip
下载好后解压,进入解压目录,将文件名全都转换为小写,然后用gfortran进行编译:

for f in *; do mv $f `echo $f|tr [A-Z] [a-z]`; done
gfortran calmet.for -o calmet.exe

5. 编译CALPUFF

目前最新的稳定版是 7.2.1: 下载地址:
http://www.src.com/calpuff/download/Mod7_Files/CALPUFF_V7.2.1_L150618.zip
下载好后解压,进入解压目录,如果直接用gfortran进行编译:

gfortran modules.for calpuff.for -o calpuff.exe

会提示以下错误:

Error: Nonnegative width required in format string at (1)

根据提示,找到calpuff.for对应的行数 :修改read()函数第二个参数为*, 比如:read(line_ver((i1+4):32),'(f)') rver 修改为 read(line_ver((i1+4):32),*) rver ,
read(awork2(1:n2),'(i)') irmap(nsamp) 修改为 read(awork2(1:n2),*) irmap(nsamp)
保存,重新执行编译命令即可。

6. 编译CALPOST

目前最新的稳定版是 7.1.0: 下载地址:
http://www.src.com/calpuff/download/Mod7_Files/CALPOST_v7.1.0_L141010.zip
下载好后解压,进入解压目录,如果直接用gfortran进行编译:

gfortran calpost.for -o calpost.exe

会提示以下错误:

Error: Nonnegative width required in format string at (1)

解决方法同 3. 安装CALPUFF一样,修改源代码,重新编译。

参考

CentOS 7 直接安装 gcc 7
Ubuntu下gfortran编译安装CALWRF
calpuff_install-v2.pdf
CALPUFF 7.3.1 modeling system is now available

使用 gfortran 编译 CALPUFF相关推荐

  1. 用gfortran编译C和Fortran

    1.Test1.C文件 void test_simple(); void test_call(char filename[], int a[], int n, int* val);void test_ ...

  2. linux gfortran编译,gfortran编译学习

    一.http://wiki.ubuntu.org.cn/index.php?title=Compiling_Fortran&variant=zh-cn 二.http://blog.scienc ...

  3. WRF——OBSGRID使用方法(gfortran编译)

    一.安装 cd /home/ubuntu/WRFCHEM/ #自己的wrf目录 git clone https://github.com/wrf-model/OBSGRID.git cd /home/ ...

  4. 解决pscad Gfortran编译问题

    跑pscad程序一直出现错误: Fatal Error: Parse error when checking module version for file 'ndde.mod' opened at ...

  5. windows下gfortran编译error:Note: The following floating-point exceptions are signalling: IEEE_UNDERFLOW

    这是gfortran版本不兼容的问题: IEEE_INVALID_FLAG is triggered by invalid operations, such as trying to take sqr ...

  6. linux升级gfortran,gfortran编译cp2k4.1

    大部分安装包可以在https://www.cp2k.org/static/downloads/找到,其它的可以去官网自行下载.https://www.cndba.cn/shuye100/article ...

  7. 【opencv】ubuntu14.04上编译opencv-4.0.1 + opencv_contrib-4.0.1

    1.要求 编译器版本:c++11 cmake版本:3.5.1 2.安装camke 2.1 官网下载:https://cmake.org/download/ 选择:Linux x86_64 cmake- ...

  8. cfl3d linux 编译,CMake build system for cfl3d

    @@ -0,0 +1,379 @@ --- title: cfl3d+openmpi+gfortran编译和安装 --- #简介 cfl3d用intel的编译器和mpi会比较容易编译,不再详述.本文主 ...

  9. ubuntu安装vasp_科学网—Ubuntu18.04编译VASP.5.4.1两种方法的详细过程 - 木留华的博文...

    笔者根据自己的经验总结了VASP在Ubuntu系统的安装方法,分享给大家并方便自己查看. 下面两种编译方法(gfortran及MKL分别编译VASP)均需要VASP源码包及其补丁,这些可以在官网或通过 ...

最新文章

  1. GitLab设置中文
  2. 请问:这里的空应怎么填呀?
  3. Android系统编译过程中常见问题汇总(1)
  4. Python 技术篇-通过进程名称、PID杀死windows进程的两种方法,获取当前运行程序的pid
  5. 为什么我不再使用MVC框架
  6. matlab narxnet,请问吧里有大神做过MATLAB时间序列神经网络(NARX)吗?
  7. 软件测试系列之四 单元测试(Junit)
  8. 强迫用户升Win10?旧版Windows放弃对新CPU更新支持
  9. duilib自定义消息
  10. java遍历树结构数据_Java数据结构——二叉树的遍历(汇总)
  11. 第三十二期:你们都是怎么学Python的?
  12. 企业数字化新战场:低代码究竟是“毒瘤”还是“良药”?
  13. go语言学习之helloword
  14. 6月份个人:修改Windows系统多人使用多账号同时远程登陆 并修改脚本自动生成每个用户登录日志。...
  15. CentOS7中的firewall 和 iptables
  16. 设置Kafka集群的方法
  17. 记录一次项目中代码大致优化方向
  18. 计算机初始化,win7怎么初始化电脑_手把手教你初始化win7电脑
  19. 计算机键盘上除在哪里,backspace键在哪里
  20. [数据库笔记] SQL50题11 - 30

热门文章

  1. 什么是天气预报 API 接口?如何获取天气预报 API?
  2. “差生”韩寒难以改变的人生戏码
  3. 揭秘跨境电商亚马逊测评的培训骗局!千万不要上当受骗!
  4. JAVA计算两条直线的交点(判断两条线段相交)
  5. RFX2401C skyworks射频2.4GHZ ZIGBEE/ISM发射/接收RFeIC
  6. DICOM医学图像处理:fo-dicom网络传输之 C-Echo and C-Store
  7. Leetcode刷题笔记12:【20】有效的括号【155】最小栈【255】用队列实现栈(STL:stackC++ 单引号和双引号)
  8. 解决网页中文字无法选中的问题
  9. 大数据-玩转数据-阿里云获取AccessKey步骤
  10. Velodyne 16线激光雷达-多雷达版本