Ubuntu 20.04 LTS に GMT 6 をインストール
GMT 6 は地域科学,地球科学系で人気の高いプロットツールで,印刷原稿クオリティの最も美しい図が描ける,すばらしいソフトです.
Windows 10 Pro の WLS2 の Ubuntu 20.04 LTS にビルド・インストールしたときの備忘録です.こちらを参考にさせていただきました.aptでもインストールできるようですが,ビルド・インストールでも簡単で,公式でもお勧めとなっていました.
依存パッケージのインストール
最初に依存パッケージをインストールします.既にインストールされているものは飛ばされるはずです.
sudo apt update
sudo apt upgrade -y
sudo apt install -y build-essential cmake libcurl4-gnutls-dev libnetcdf-dev gdal-bin libgdal-dev libfftw3-dev libpcre3-dev liblapack-dev libblas-dev libglib2.0-dev ghostscript ghostscript-x graphicsmagick ffmpeg xdg-utils
GMTのバージョンの設定
インストールを楽にするため,バージョンをシェル変数(シェル内のみ有効)として設定しておきます.最新版を調べてそれを設定するのがよいでしょう.以下は2021年3月23日時点の最新版です.
GMT_VERSION="6.1.1"
GSHHG_VERSION="2.3.7"
DCW_VERSION="1.1.4"
ソースコードのダウンロードと展開
ホームディレクトリ( /home/$USER/
とします. $USER
にはホームディレクトリ名が設定されているはずです)以下に src
ディレクトリを作成し,ソースコードをダウンロードし,展開します.
# ホームディレクトリで作業
mkdir src
cd src
wget "https://github.com/GenericMappingTools/gmt/releases/download/${GMT_VERSION}/gmt-${GMT_VERSION}-src.tar.gz"
wget "https://github.com/GenericMappingTools/gshhg-gmt/releases/download/${GSHHG_VERSION}/gshhg-gmt-${GSHHG_VERSION}.tar.gz"
wget "https://github.com/GenericMappingTools/dcw-gmt/releases/download/${DCW_VERSION}/dcw-gmt-${DCW_VERSION}.tar.gz"
tar xzvf gmt-${GMT_VERSION}-src.tar.gz
tar xzvf gshhg-gmt-${GSHHG_VERSION}.tar.gz
tar xzvf dcw-gmt-${DCW_VERSION}.tar.gz
GSHHGとDCWは ~/src/
から ~/local/
に移動します.以降はこれらが ~/local/
以下に存在することを前提とします.GMTのスクリプト実行時にGSHHG等が見つからない,といった不整合を避けるため,要注意です.
mv gshhg-gmt-${GSHHG_VERSION} ../local/
mv dcw-gmt-${DCW_VERSION} ../local/
ビルドスクリプトの作成
ビルド用のスクリプト build_gmt.sh
を /home/$USER/src/
に作成します.
#!/bin/bash
# build_gmt.sh
GMT_VERSION="6.1.1"
GSHHG_VERSION="2.3.7"
DCW_VERSION="1.1.4"
GSHHG_ROOT=/home/$USER/local/gshhg-gmt-${GSHHG_VERSION}
DCW_ROOT=/home/$USER/local/dcw-gmt-${DCW_VERSION}
cd gmt-${GMT_VERSION}
cat ./cmake/ConfigUserTemplate.cmake | \
sed -e 's%\#set (GSHHG_ROOT "gshhg_path"%'"set (GSHHG_ROOT ${GSHHG_ROOT}"'%g' | \
sed -e 's/\#set (COPY_GSHHG FALSE)/set (COPY_GSHHG TRUE)/g' | \
sed -e 's%\#set (DCW_ROOT "dcw-gmt_path"%'"set (DCW_ROOT ${DCW_ROOT}"'%g' | \
sed -e 's/\#set (COPY_DCW FALSE)/set (COPY_DCW TRUE)/g' \
> ./cmake/ConfigUser.cmake
mkdir build
このスクリプト build_gmt.sh
を source
で実行します.sudo は付けません.source
で実行することで,ディレクトリ移動がスクリプトを実行したときのシェルにも反映されます.実行後のディレクトリは ~/src/gmt-6.1.1/
になります.
source build_gmt.sh
ビルド・インストールの実行
ディレクトリ build
に移動し,ビルド・インストールします.-j4
は4コアを利用してビルドするオプションで,実際のコア数を指定すると最も速くなります.
cd build
cmake -DCMAKE_INSTALL_PREFIX=/usr/local -DCMAKE_BUILD_TYPE=RelWithDebInfo ..
make -j4
sudo make install
実行形式は /usr/local/bin/
にコピーされます.この場合,PATH 等の追加は不要です.