SAC10.6fのLinuxマシン(PC/AT互換機)へのインストール



※99/02/01追加
/usr/local/sac/utils以下にsourceのあるコマンド(SACの内部コマンドではなく外部コマンドとなります)のインストール部分を追加しました。


1. sourceの入手
東京大学地震研究所のanonymous ftpサイト
  ftp.eri.u-tokyo.ac.jp/pub/src/seismology
から
  sac10.6f.tar.Z
  sac10.6f.patch.v2.tar.Z
の2つのアーカイブファイルをとってきます。このうちsac10.6f.patch.v2.tar.Zは地震研究所の纐纈さん作成の
  Intel CPU + Solaris2.x + f77
  Intel CPU + Solaris + gcc + f2c
  Intel CPU + BSD系OS + gcc + f2c
という環境のためのpatchです。Linuxでも以下のようにcompile時のオプションをいじったりすればちゃんとcompileできます。patchを作成された纐纈さんに感謝致します。


2. インストール
以下ではftpでとってきたアーカイブファイルは/hogehogeに置いてあるとしています。自分の状況に合わせて/hogehogeの部分は/tmpとか自分のホームディレクトリとかに適宜読み換えて下さい。以下の作業は/usr/localの下で書き込みを行うのでrootになって行います。環境変数の設定等に使用するスクリプトがcsh系のシェルを前提に作られているので、rootのシェルがそれ以外の場合(bash, zsh等)はcsh系のシェルに変えて作業を行ないましょう

まず/usr/localに移動します。
# cd /usr/local

次にsac10.6f.tar.Zを展開します。
# gzip -cd /hogehoge/sac10.6f.tar.Z | tar xvf -
(これで/usr/localの下にsacというdirができてその下にsacのsourceファイル等が展開されます)

/usr/local/sacに移動します。
# cd sac

次にsac10.6f.patch.v2.tar.Zを展開します。
# gzip -cd /hogehoge/sac10.6f.patch.v2.tar.Z | tar xvf -
(ここでREADME.patchをよく読みましょう。FreeBSDなどのBSD系OSの場合はそこに書いてある通りにやればインストールできると思います)

Intel用patchとgcc + f2c用patchをあてます。
# patch -p0 < patch.intel
# patch -p0 < patch.gcc_f2c

/usr/local/sac/binに移動してcompileオプションの設定等を行います。
# cd bin
# gcc -o f2c_getopt f2c_getopt.c
# cp setvar.BSD386 setvar
# setvarを修正(詳しくはこちらを御覧下さい)
# f77を修正(詳しくはこちらを御覧下さい)
# loadsacを修正(詳しくはこちらを御覧下さい)
# sourceファイルの1部を修正(詳しくはこちらを御覧下さい)
# source setvar

subroutineのsourceファイルをcompileしてobjectファイルを作ります
# compilesac

subroutineのobjectファイルをまとめてlibraryにします
# createlib

sacのmain routineをcompileしlibraryをlinkして実行ファイル/usr/local/sac/bin/sacを作ります
# loadsac

3. /usr/local/sac/utils以下にsourceのあるコマンド(外部コマンド)のインストール
 ここではcompileに上記の纐纈さんpatchで導入された/usr/local/sac/bin/f77を使うとうまく行かなかったので、RedHatに入っているFortran compilerであるfort77(中身はgcc + f2c)を使いました。うちのRedHat Linuxマシンにはあとからg77も入れてあるのですが、g77でもちゃんとcompileできました。

まず/usr/local/sac/utilsに移動します
# cd /usr/local/sac/utils

compile用シェルスクリプトloadutilsを一部修正します(詳しくはこちらを御覧下さい)
Makefileを修正します(詳しくはこちらを御覧下さい)
環境変数の設定を行います。../bin/setvarをコピーして流用します(SACFFLAGSだけ修正)(詳しくはこちらを御覧下さい)
# source setvar

compileします。実行ファイルは全て/usr/local/sac/binにできます
# loadutils

できたコマンドは以下の通りSGFフォーマット画像関係のツールです。
  sgflist
  sgfmerge
  sgfplot
  sgftoadobe
  sgftohipen
  sgftomif
  sgftops  (←SGFフォーマット画像ファイルをPostScriptファイルに変えるコマンドです)
  sgftoqms
  sgftoquic
  sgftotek

これでインストールはおしまいです。


4. .cshrcの編集
以下の3行をつけておきましょう。上2行はSAC10.6fでは必要なんかいな?
setenv SACAUX /usr/local/sac/aux
setenv SACGRAPHICS xwindows
set path = ($path /usr/local/sac/bin)



SACの使い方へ戻る