[ English | Japanese ] [ 地球流体電脳倶楽部 / gtool プロジェクト ] [ gtool5 ドキュメント ]

gtool5 インストールガイド


  1. 動作環境
  2. 入出力ファイル形式
  3. インストールの流れ
  4. 必要なソフトウェア
  5. ビルドの手引き
  6. インストールの手引き
  7. テストプログラム実行の手順
  8. gt5frt へのパスの設定

動作環境

gtool5 ライブラリは以下の環境での動作を確認しています.

過去には以下の環境でも動作したことが確認されています. 確認はしていませんが, 現在のバージョンでもおそらく動作すると期待されます.

入出力ファイル形式

gtool5 は以下のファイル形式をサポートします.

また, 今後以下のファイル形式がサポートされるといいなと考えています.

インストールの流れ

gtool5 のインストールは以下のように行います. 詳しくは各項目を参照してください.

  1. 必要なソフトウェア をインストールします.
  2. ビルドの手引き に従い, ソースからライブラリをビルドします.
  3. インストールの手引き に従い, ライブラリをインストールします.
  4. テストプログラム実行の手順 に従い, インストールされた ライブラリが正常に機能するかどうか確認してください.
  5. gt5frt へのパスの設定 を行ってください.

インストールの例

gtool プロジェクト の「チュートリアル」では, インストールの実例も紹介されています. インストールがうまくいかない場合は参照してください.

Debian GNU/Linux ユーザのみなさまへ

Debian GNU/Linux を使用している場合は, <URL:http://www.gfd-dennou.org/library/gtool/debian.htm> にて配布しているバイナリパッケージも利用できます.

Windows ユーザのみなさまへ

乙部 直人さんgtool5 Windows バイナリ にて Intel Visual Fortran 用 の Windows バイナリを作成・公開しています.

必要なソフトウェア

gtool5 を利用するためには, 以下のソフトウェアを 事前にインストールしておく必要があります.

netCDF (バージョン 3.6)

Debian GNU/Linux を使用しており, バイナリパッケージを利用する場合

ソースからビルドする場合

ドキュメントを生成するためには以下のソフトウェアを 事前にインストールしておく必要があります. ただし, gtool5 の TGZ パッケージ から入手する場合には既に生成済みです.

ビルドの手引き

TGZ パッケージの展開

適当な作業ディレクトリでソースアーカイブを展開します. ソースは gtool5-バージョン というディレクトリに展開されます.

$ tar xvzf gtool5_current.tgz

または

$ zcat gtool5_current.tar.gz | tar -xvf -

Fortran コンパイラの指定

環境変数 FC に使用する Fortran コンパイラを指定してください. 以下は, 利用するコンパイラが frt の場合です.

最適化やデバッグのためのオプションは環境変数 FFLAGS に設定してください. 以下の例は frt の高速化と 並列化のためのオプションです.

Config.mk の作成

展開されたディレクトリに移動し, ./configure を実行します. --with-netcdf= には netCDF ライブラリのパスを指定します. (以下の例は /usr/local/netcdf/lib/libnetcdf.a にライブラリがある 場合のものです). このコマンドによって Config.mk ファイルが生成されます. netCDF ライブラリが共有ライブラリである場合, --with-netcdff= も指定する必要があるかもしれません. 詳しくは下記のオプションの詳細を参照してください.

$ ./configure --with-netcdf=/usr/local/netcdf/lib/libnetcdf.a

gtool5 を MPI 用にビルドする場合には, MPI 用にビルドする場合には を参照してください.

ビルドには GNU make が必要となるため, configure は PATH 内から 自動で GNU make を探査しようとしますが, もし見つからない場合, エラーを返します. その場合には環境変数 MAKE に GNU make コマンドを指定して再度 configure を実行してください.

インストール先などを変更したい場合は, 以下のように --help オプ ションをつけることで, 指定可能なオプションリストが表示されます.

$ ./configure --help

主なオプションに関しての説明です.

--with-netcdf=ARG
ARGビルドに必要な netCDF ライブラリ を指定します. 必ず明示的に指定する必要があります.
--with-netcdff=ARG
netCDF ライブラリが共有ライブラリである場合, C 用ライブラリと Fortran 用ライブラリとに分かれてビルドされている場合があります. その際は, 上記オプションに C 用ライブラリを指定し, 本オプションの ARGFortran 用ライブラリ を 指定します.
--prefix=ARG
ARG にライブラリやモジュール, 実行ファイルのインストール先の ディレクトリのプレフィックスを指定します. デフォルトは /usr/local/gtool5 です.
--host=ARG
クロスコンパイルを行う場合には, パッケージが実行されるシステムタイプ名 を ARG に指定します.
--libdir=ARG
ARG にライブラリのインストール先のディレクトリを指定します. デフォルトは /usr/local/gtool5/lib です.
--includedir=ARG
ARG にモジュール情報ファイルのインストール先のディレクトリ を指定します. デフォルトは /usr/local/gtool5/include です.
--bindir=ARG
ARG に実行ファイルのインストール先のディレクトリを指定します. デフォルトは /usr/local/gtool5/bin です.
--with-docdir=ARG
ARG にドキュメントファイルのインストール先を指定します. デフォルトは /usr/local/gtool5/doc です.
--with-gt5libname=ARG
ARG に gtool5 のライブラリ名を指定します. ライブラリ名は lib<ARG>.a となります. デフォルトは gtool5 であり, その際のライブラリ名は libgtool5.a となります.
--with-gt5suffix=ARG
ARG にはインストールディレクトリ, ライブラリ名, 実行ファイルの末尾につける接尾語を指定します. 例えば, 他が全てデフォルトの設定で ffc5 と指定すると, インストール先のディレクトリのプレフィックスが /usr/local/gtool5-ffc5 , ライブラリ名が libgtool5-ffc5.a , インストールする実行ファイル名は gt5frt.ffc5 , gt5config.ffc5 等のように なります.
--with-lang_conform_check=ARG
ARG に言語規格を指定することで, コンパイル時に言語規格の チェックを行うよう, オプションを追加します. 現在 "95" のみ指定可能です. コンパイラによっては指定できません.
--enable-debug
このオプションを指定することで, コンパイル時や実行時にデバッグメッセージ を出力するオプションを追加します. 大抵の場合, プログラムの実行速度が低下するため, デバッグ時のみ 使用します. コンパイラによっては無効です.
--with-abort=ARG
ARGabort, errtra-setrcd, exit, setrcd, stop のいずれか を指定することで, 終了時に用いる Fortran の内部関数を変更することが 可能です. デフォルトは abort です.
abort
Fortran の内部サブルーチン abort で終了します.
errtra-setrcd
Fujitsu Fortran の ERRTRA サービスサブルーチンを呼び出し, 現在実行中のプログラム単位までのトレースバックマップを出力し, 終了します. Fujitsu Fortran の SETRCD サービスサブルーチンにて, 復帰コード 13 を設定し, 終了コードとして 3 を設定します.
exit
Fortran の内部サブルーチン exit で終了します.
setrcd
Fujitsu Fortran の SETRCD サービスサブルーチンを呼び出し, Fortran の復帰コードとして 3 を設定して終了します.
stop
Fortran の内部関数 stop で終了します.
--config-cache または -C

Config.mk ファイルが生成されると同時に, config.cache ファイルが作成され, ./configure の引数に指定された netCDF ライブラリの位置などの情報が保持されます.

再度 ./configure を実行する際にもこのオプションを指定することで, config.cache が読み込まれ, 前回指定したオプション等が引き継がれます. 既に存在する config.cache を無視する場合はこのオプションを 指定せずに ./configure を実行してください.

例えば下記のように ./configure を実行するとします.

$ ./configure -C --with-netcdf=/usr/local/netcdf/lib/libnetcdf.a --enable-debug

すると次回以降, 下記のように ./configure を実行することで netCDF ライブラリの位置や, デバッグオプションを付加する情報が 引き継がれます.

$ ./configure -C

Debian GNU/Linux で Fujitsu Fortran を利用している場合には, Config.cache.debian-ffc* を config.cache に移動して ./configure コマンドを実行するだけで自動的に ライブラリの位置が設定されます.

$ cp Config.cache.debian-ffc5 config.cache
$ ./configure -C

MPI 用にビルドする場合には

gtool5 を MPI 用にビルドする場合にはまず MPI ライブラリをシステムに インストールしてください.

Config.mk を作成する場合には, 環境変数 FC には mpif90 などの MPI 用コンパイルコマンドを指定してください. そして, 以下のように configure にはオプション --with-mpiexec に MPI 実行コマンドを指定してください.

$ ./configure --with-netcdf=/usr/local/netcdf/lib/libnetcdf.a --with-mpiexec=mpirun

環境によっては MPI 実行コマンドが特殊で, configure がうまく動作しない場合があります. その場合には以下のように --enable-mpi オプションを指定してください.

$ ./configure --with-netcdf=/usr/local/netcdf/lib/libnetcdf.a --enable-mpi

その他のオプションなどについては, Config.mk の作成 を参照してください.

Config.mk の編集

環境に合わせ Config.mk を手動で編集してください. 下記の設定についてよく分からない場合にはとりあえず ソースコードのコンパイル へ進んでください.

FC          : Fortran コンパイラ

SYSFFLAGS   : コンパイル時・リンク時に必要なフラグ
              (Fortran コンパイラ実行時に必要なオプション)

SYSLDFLAGS  : リンク時に必要なフラグ

SYSLDLIBS   : リンク時に必要なライブラリ

F90MODTYPE  : モジュール情報の渡し方

DEST_LIB    : gtool5 ライブラリインストールディレクトリ

DEST_INC    : gtool5 モジュールインストールディレクトリ

DEST_BIN    : gtool5 実行ファイルインストールディレクトリ

DEST_DOC    : gtool5 ドキュメントファイルインストールディレクトリ



MODS        : モジュールファイル拡張子

MAKE        : GNU make コマンド

AR          : アーカイブコマンド

ARFLAGS     : アーカイブ時に必要なフラグ

RANLIB      : アーカイブのインデックスを作成するコマンド

ソースコードのコンパイル

ビルドには必ず GNU make を使用してください. 他の "make" プログラムを使 用すると, 正しくビルドが行われません. 以降 GNU make のコマンド名を "make" と表記しますが, これらはシステムの GNU make コマンドの名前に置き換えてください.

./configure を実行すると, 以下のように GNU make のコマンド名が 表示されます. このメッセージに従って GNU make を実行してください.

Execute GNU make in the current directory, as follows.

  /usr/bin/make

ドキュメントの生成

マニュアルとコードリファレンスのコンパイルはカレントディレクトリ において, 以下のコマンドを実行してください. gtool5 の TGZ パッケージ から入手する場合には既に生成済みです.

$ make doc

インストールの手引き

カレントディレクトリで以下のコマンドを実行してください. システム領域にインストールする場合には管理者権限が 必要です. (デフォルトの場合はシステム領域にインストールします).

# make install

ドキュメントをインストールする場合には以下のコマンドを実行します.

# make install-doc

テストプログラム実行の手順

カレントディレクトリにおいて, 以下のコマンドを実行してください. エラーが生じずに " *** Compilation and installation are succeeded !! *** " というメッセージが表示されればインストールは完了です.

$ make test-installed

クロスコンパイルを行った場合

ライブラリをクロスコンパイルした場合は, 下記のようなメッセージが 表示されます.

Cross compile mode will be used.
First, change directory to ./test .
Secondly, submit ...
       dc_string_test ... histtest ...,

Thirdly, change directory to ./ .
Last "make test-installed-c"

このメッセージに従い, 以下のようにテストを行ってください.

  1. test ディレクトリに移動します.
  2. リストされる実行ファイルを実行します. 実行方法はそれぞれの環境に依存するので, 別途調べてください.
  3. 元のディレクトリに戻ります.
  4. make test-installed-c を実行します.

エラーが生じずに " *** Compilation and installation are succeeded !! *** " というメッセージが表示されればインストールは完了です.

gt5frt へのパスの設定

上記のように正しくインストールが行われたら, gt5frt というシェルスクリプトが --prefix=ARG で指定されたディレクトリ以下の bin ディレクトリ ARG/bin に作成されているはずです. ( --prefix= を指定しなかった場合は /usr/local/gtool5/bin/ 以下).

このディレクトリへのパスを通してください. 以下は /usr/local/gtool5/bin/ 以下に gt5frt がインストールされた場合の例です.

gt5frt は gtool5 ライブラリを利用した Fortran プログラムを 簡単にコンパイル, リンクするためのシェルスクリプトです. これまで利用していた Fortran コンパイラのコマンドの代わりに gt5frt を用いることで, 自動的に gtool5 ライブラリへの リンク, モジュール群へのディレクトリ指定を行ってくれます.

$ gt5frt test.f90

/usr/bin/g95 -I/usr/local/gtool5/include -O test.f90 \
    -L/usr/local/gtool5/lib -lgtool5 -L/usr/local/lib -lnetcdf

$Id: INSTALL,v 1.8 2009-03-18 07:12:38 morikawa Exp $
gtool Development Group / GFD Dennou Staff dcstaff@gfd-dennou.org