||
netcdf4以上(印象中应该是4.1.3以上)的版本将c和Fortran分开,也就是要先装netcdf-c才能装netcdf-fortran.
电脑出现故障,近期将zlib,hdf5,curl,netcdf,mpich2,mct全部重装了,以构建ROMS环境.
但是安装过程中出现了诸多问题,由于之前安装没留下笔记,且安装时间在很久之前,所以一时想不起来,幸得网友帮助。表示感谢!也将此方法贴出来,一方面留给有需要的朋友,另一方面也留作笔记备用.
注:netcdf-c用的是4.4.1,netcdf-fortran用的是4.4.4,这样是允许的.
另外:几个程序都安装在同一个文件夹下,这样有一个好处,就是在编辑环境变量的时候可以有效避免漏掉一下库和链接.以前自己编译的时候没注意到,这次方便很多。
具体方法如下:
(1)Build zlib
$ sudo ./configure --prefix=/usr/local/netcdf4
$ make
$ make check
$ sudo make install
(2)Build HDF5
Then you build HDF5, specifying the location of the zlib library:
$sudo ./configure --with-zlib=/usr/local/netcdf4 --prefix=/usr/local/netcdf4
$sudo make
$sudo make check
$sudo make install
(3)build curl
$sudo ./configure --with-zlib=/usr/local/netcdf4 --prefix=/usr/local/netcdf4
$ make
$ make check
$ sudo make install
(4)Build netcdf4.4.1.1
After HDF5 is done, build netcdf-c, specifying the location of the HDF5, zlib, and (if built into HDF5) the curl header files and libraries in the CPPFLAGS and LDFLAGS environment variables.
$ CPPFLAGS=-I/usr/local/netcdf4/include LDFLAGS=-L/usr/local/netcdf4/lib ./configure --prefix=/usr/local/netcdf4
$sudo apt-get install m4 (如果提示没有m4的话,否则可以不执行)
$ make
$ make check
$ sudo make install
(5)Build netcdf4-fortran-4.4.4
$ export LD_LIBRARY_PATH=/usr/local/netcdf4/lib:${LD_LIBRARY_PATH}
$sudo CPPFLAGS=-I/usr/local/netcdf4/include LDFLAGS=-L/usr/local/netcdf4/lib ./configure --prefix=/usr/local/netcdf4 CC=gcc FC=gfortran #可用gfortran或ifort,要与pycnal安装一致
$ sudo make
$ sudo make check
$ sudo make install
---------------------------------------------------------------------------
添加环境变量:
$ sudo gedit ~/.bashrc
export NETCDF=/usr/local/netcdf4
export PATH=$NETCDF/bin:$PATH
export CPPFLAGS=-I/usr/local/netcdf4/include
export LDFLAGS=-L/usr/local/netcdf4/lib
export LD_LIBRARY_PATH=/usr/local/netcdf4/lib:${LD_LIBRARY_PATH}
$source ~/.bashrc
测试:ncdump
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2024-9-19 08:02
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社