gtool5 fortran library を利用するには以下のソフトウェアが必要です.
gtool5 fortran library は autotools (autoconf,automake,libtool) を利用しています. autotools を利用する典型的なソフトウェアと同様に
./configure & make & make install
でインストールすることができるでしょう.
先ずは環境変数 FC
に使用する Fortran コンパイラを, 環境変数 FCFLAGS
に最適化やデバッグのためのオプションを指定して下さい. 例えば
% FC=gfortran % FCFLAGS="-g -O2 -fopenmp"
などです.
configure
の実行次に適当な作業ディレクトリでソースアーカイブを展開します. ソースは gtool5-バージョン
というディレクトリに展開されます.
$ tar xvf gtool5_current.tar.gz
展開されたディレクトリに移動し, ./configure
を実行します.
% ./configure
out ot tree build にも対応していますので, 例えば build
以下でコンパイルをしたい場合には
% mkdir build % cd build % ../configure
といったことも可能です.
インストール先などを変更したい場合などは, configure
に --help
オプ ションをつけて, 指定可能なオプションリストをご確認下さい.
% ./configure --help
主なオプションは以下の通りです.
--with-nf-config=ARG
PATH
から探索.ARG
に nf-config
を明示的に指定することもできます. これによって NetCDF C Library および NetCDF Fortran Library に関する 設定が行なわれます.--with-netcdf=ARG
nf-config
が使えない場合に NetCDF C Library の場所を指定します.--with-netcdff=ARG
nf-config
が使えない場合に NetCDF Fortran Library の場所を指定します.--with-netcdff-include=ARG
nf-config
が使えない場合に NetCDF Fortran Library の モジュールファイル netcdf.mod
場所を指定します.--prefix=ARG
/usr/local/gtool5
ARG
にライブラリやモジュール, 実行ファイルのインストール先の ディレクトリのプレフィックスを指定します.--host=ARG
ARG
に指定します.--enable-mpi
FC
に MPI 用のコンパイラ(例えば mpif90 等)を指定して下さい.--with-mpiexec
--with-mpiexec-opts
--with-mpiexec-procnum
--with-ncdump
'PATH
' から探索configure
が正常に終了したならば, 例えば以下の様に結果のサマリが表示されますので, 内容を確認して下さい.
表示された結果が期待通りである場合には
% make
でビルドが始まります.
カレントディレクトリにおいて, 以下のコマンドを実行してください.
$ make test
カレントディレクトリで以下のコマンドを実行してください. システム領域にインストールする場合には管理者権限が 必要です(デフォルトの場合は /usr/local/gtool5
にインストールします).
# make install
上記のように正しくインストールが行われたら, gt5config
, gt5frt
というシェルスクリプトが --prefix=ARG
で指定されたディレクトリ以下の bin
ディレクトリ (ARG/bin
)に作成されているはずです. ( --prefix=
を指定しなかった場合は /usr/local/gtool5/bin/
以下). このディレクトリへ PATH
を通してください.
gt5config
は gtool5 ライブラリのビルドに利用したコンパイラ等の情報が含まれています. これを用いることで, gtool5 ライブラリを基盤としたソフトウェアのインストールが簡便になることが期待されています.
gt5frt
は gt5cofnig
の情報をベースに, gtool5 ライブラリを利用した Fortran プログラムを簡単にコンパイル・リンクを行なうためにシェルスクリプトです. gt5frt
を用いることで, 自動的に gtool5 ライブラリへのリンクとモジュール群へのディレクトリ指定を行ってくれます.