登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
为了学习CMAQ搞了快一个星期的I/O API3.2,搜寻了各种中外资料终于编译成功了。
原教程是参考的
http://bbs.06climate.com/forum.php?mod=viewthread&tid=37293&extra=page%3D1
但由于po主是用4.7以下的gcc版本编译I/O API3.1,而我用的ubuntu18.04也就只能降到4.8.5,所以就索性选择I/O API3.2了。
以下是安装记录,希望能提供给大家一些帮助(我自己也是小白了)
首先在你要安装的目录下获取I/O API3.2 (没有git的话可以sudo apt-get install git)
git clone https://github.com/cjcoats/ioapi-3.2
然后修改ioapi3.2目录下的Makefile:(最好用gedit,非常方便)
!我用的是64位的Ubuntu和gfortran,所以是Linux2_x86_64gfort,大家可以根据自己的情况调整
BIN=Linux2_x86_64gfort
!表示在当前目录,也可以设置绝对路径
BASEDIR=${PWD}
!这是安装位置,可以自己设置(这个目录必须存在):
INSTALL=/usr/local/ioapi
LIBINST=$(INSTALL)/$(BIN)
BININST=$(INSTALL)/$(BIN)
!我没有编译pvm,所以选择nocpl:
CPLMODE=nocpl
IOAPIDEFS=
PVMINCL=
!就按照这个顺序输入
NCFLIBS=-lnetcdff -lnetcdf -lhdf5_hl -lhdf5 -lz
!完毕保存退出
当前的ioapi-3.2中的ioapi和m3tools目录下没有Makefile所以需要复制:
在ioapi和m3tools目录下分别
cp Makefile.nocpl Makefile
完毕后退回ioapi-3.2目录。
创建Linux2_x86_64gfort文件夹:
export BIN=Linux2_x86_64gfort
mkdir $BIN
将lib复制到Linux2_x86_64gfort目录下:
cd $BIN
cp /usr/local/netcdf/lib/lib* ./
注意,这里我是看的上文的教程,将hdf zlib都放在netcdf同一个目录,所以lib也是一起粘贴过来,如果你是分开安装,就必须把其他的也粘过来。
下面就很简单了,回到ioapi-3.2目录
make configure
make
make install
在Linux2_x86_64gfort目录下输入ls *.mod ls libioapi.a 看有没有生成相关的文件,即可。
第一次发帖,如果有不对的地方希望大家指出,一起学习。
|