GMT在Ubuntu环境下的安装流程

GMT在Ubuntu环境下的安装流程及错误解决办法

本文借鉴博客地址:http://seisman.blog.ustc.edu.cn

GMT 采用UNIX 体系,把复杂的任务分解为较小和易处理的部分。单独的GMT 模块很小,容易维护,也能使用任何其他的UNIX 工具。 GMT 用ANSI C 程序语言写成(非常简便), 适应于 POSIX 和Y2K,不受硬件(如内存)限制。GMT 有意用命令行形式写成,而不用Windows环境,以求最大程度的机动性。我们早就采用为标准化PostScript输出格式,而不用后文件( meta–file)的形式。除了支持海岸线数据外,GMT完全decouples了由主GMT程序读取数据的操作。GMT 使用独立结构的文件格式。

GMT运行环境

在这里插入图片描述

1.安装GMT4.5.9所需要的文件

包括以下三个:
gmt-4.5.9.tar.bz2
gshhg-gmt-nc3-2.2.2.tar.gz
netcdf-3.6.3.tar.gz
在这里插入图片描述把这些软件包放在同一个文件夹下面(下文称为安装文件夹),以便于操作。

下载地址:
http://gmt.soest.hawaii.edu/
(http://www.unidata.ucar.edu/downloads/netcdf/netcdf-3_6_3/index.jsp)

注:你可能会看到gshhg-gmt-nc3-2.2.2.tar.gz和gshhg-gmt-nc4-2.2.2.tar.gz两个文件,其分别对应netcdf3和netcdf4,根据自己要安装的netcdf版本确定gshhg版本。

2.安装netcdf

tar -zxvf netcdf-3.6.3.tar.gz                //解压netcdf
cd netcdf-3.6.3                              //进入netcdf文件夹
./configure --prefix=/opt/netcdf-3.6.3       //configure, prefix指定netcdf的安装路径
make                                         //编译netcdf
sudo make install                            //安装netcdf

3.安装GMT

cd ..                              //退回到netcdf上级目录
tar -jxvf gmt-4.5.9.tar.bz2        //解压GMT
cd GMT4.5.9                        //进入GMT文件夹
./configure --prefix=/opt/GMT-4.5.9 --enable-netcdf=/opt/netcdf-3.6.3/
                                   //配置GMT。prefix为GMT安装路径,--enable-netcdf为前面netcdf的安装路径
make gmt                           //编译GMT自己的可执行文件及库文件
make suppl                         //编译其他人提供的GMT扩展包及库文件
sudo make install-gmt              //安装GMT自己的可执行文件
sudo make install-suppl            //安装GMT扩展包
sudo make install-data             //安装GMT数据,其实就是拷贝share目录
sudo make install-man              //其实是拷贝man到share
sudo make install-doc              //其实是拷贝doc到share

4.安装GMT所需要的海岸线数据

cd ..                                  //返回GMT上级目录
tar -zxvf gshhg-gmt-nc3-2.2.2.tar.gz   //解压GMT需要的海岸线数据
sudo cp -r gshhg-gmt-nc3-2.2.2 /opt/GMT-4.5.9/share/coast
                                //拷贝数据,将所有文件拷贝到share下的coast目录中

5.修改环境变量

export GMTHOME=/opt/GMT-4.5.9
export PATH=${GMTHOME}/bin:$PATH

修改主目录下的 .cshrc文件

添加:set path = ($path /opt/GMT/bin)
     set path = ($path /opt/GMT)
保存,退出 (:x)
source .cshrc

输入:GMT,成功!

6.安装netcdf时在make的过程中错误

在刚安装的ubuntu系统中安装netcdf时在make的过程中会出现一些错误并退出,这个并不影响make install,其实主要是不影响GMT的安装和使用。
报错为:

gcc: error trying to exec 'cc1plus': execvp: 没有那个文件或目录
make[2]: *** [netcdf.lo] 错误 1

原因:未安装g++
解决办法:

sudo apt-get install g++

注意:可能需要保证gcc和g++的版本一致性
安装之后重新make就好

7.make错误2

make[2]: 正在进入目录 `/home/s2214/GMT/GMT4.5.6/src/xgrid'
 gcc -O2 -Wall  -fPIC -fno-strict-aliasing -I/home/s2214/GMT/GMT4.5.6/src -I/usr/local/netcdf/include -c -o xgrid_Panner.o xgrid_Panner.c
 xgrid_Panner.c:4:31: error: X11/Xaw/Scrollbar.h: 没有那个文件或目录

可以看出大概的意思是X11下缺少了一些东西,所以导致xgrid无法编译通过。
可以通过在对GMT进行configure的时候关闭xgrid的编译选项,即configure命令改为:

./configure --prefix=/usr/local/GMT --enable-netcdf=/usr/local/netcdf --disable-xgrid
发布了29 篇原创文章 · 获赞 5 · 访问量 1439

猜你喜欢

转载自blog.csdn.net/u011322358/article/details/104254810