installation on FreeBSD

以下はFreeBSD 8.4-RELEASE-p7 (amd64)にiSALEをインストールした際の記録である。 なおこの環境はMacOS 10.8上のParallels Desktop 8上の仮想機であるが、物理機であっても大差無いだろう。

必要なports

Xorgを入れていることは大前提となるが、以下が必要となる。

  • devel/subversion
  • graphics/pgplot
  • lang/gcc46 (これはgfortranのため)
  • devel/gmake
  • lang/python
  • math/gnuplot
  • graphics/ImageMagick

パスなどの設定

パスやaliasを活用し

  • "gfortran"と打ち込むとgfortran46が呼び出される
  • "make"と打込むとgmakeが呼び出される

ようにする。何もしないと"gfortran46"および"gmake"を打ち込まないと動かず、後のconfigureやmakeが途中で止まってしまう。

iSALEのソースファイル取得

以下のようにする。

% cd ~ 
% svn co --username tito svn://earth.naturkundemuseum-berlin.de/iSALE/tags/chicxulub ./iSALE/work 

なおここではmkdir -p iSALE/workなどの操作は不要であり、上のコマンドを実行すると./iSALE/work/が自動的に作られる。パスワードは送付されて来たものを入れる。

インストール前の設定

以下に行く。

% cd iSALE/work 

そこで./configureファイルの冒頭を編集し、

#!/bin/sh

#!/usr/local/bin/bash

に変更する。どういう訳かこれをやらないと文法エラーが出た。

ソースファイルの微修正

詳しい理由を調査してはいないが四ファイルに軽微な修正が必要であった。

  • ./iSALE/src/ptools/ptool_flags.F90

このファイルをそのままコンパイルすると、どういうわけか

write(*,"(A,I5)") "iSALEMat v0 (developer), Revision ",REV

の行が以下のようなエラーを出す。

write(*,"(A,I5)") "iSALEMat v0 (developer), Revision",
                                                      1
Error: Expected expression in WRITE statement at (1)

今回は原因を追究している時間が無いので、苦肉の策として以下のように変更する。

write(*,"(A)") "iSALEMat v0 (developer), Revision "
write(*,"(I5)") REV
  • ./iSALE/src/ptools/isalepar_flags.F90

このファイルをそのままコンパイルすると、どういうわけか

write(*,"(A,I5)") "iSALEPar v0 (developer), Revision",REV

の行が以下のようなエラーを出す。

write(*,"(A,I5)") "iSALEPAR v0 (developer), Revision", 
                                                      1 
Error: Expected expression in WRITE statement at (1) 

今回は原因を追究している時間が無いので、苦肉の策として以下のように変更する。

write(*,"(A)") "iSALEPar v0 (developer), Revision"
write(*,"(I5)") REV
  • ./iSALE/src/2D/flags.F90

このファイルについてもコンパイル時に上記と同様なエラーが出るので、

write(*,"(A,I5)") "isale2d v0 (developer), Revision",REV

の行を

write(*,"(A)") "isale2d v0 (developer), Revision"
write(*,"(I5)") REV

と修正する。

  • ./iSALE/src/2D/info.F90

このファイルについては

#ifdef REV
  REVISION=REV
  write(out,"(A,I4)") " - Revision-number: ",REVISION
#endif

の冒頭の代入文がエラーを出すので、仕方無く以下のようにする。

#ifdef REV
  write(out,"(A)") " - Revision-number: "
  write(out,"(I4)") REV
#endif

makeとインストール

以下のようにすれば良い。

% make
% make install

動作試験

以下のようにすれば良い。

% cd share/examples/demo2D
./iSALE2D

計算結果の描画

まずファイル./iSALEPlot.inpを編集する。具体的には

png/png 

の箇所を

gif/gif 

に修正する。次に以下を実行する。

% cd demo2D/ 
% ../iSALEPlot -f ../iSALEPlot.inp -m jdata.dat 

上記が終了したら、ディレクトリDamPre/下に画像ファイルが出来ていることを見る。

% ls -CF DamPre
00000.gif  00040.gif  00080.gif  00120.gif  00160.gif  00200.gif
00010.gif  00050.gif  00090.gif  00130.gif  00170.gif  legend1.gif
00020.gif  00060.gif  00100.gif  00140.gif  00180.gif  legend2.gif
00030.gif  00070.gif  00110.gif  00150.gif  00190.gif

結果をanimateで見てみる。

% cd DamPre/
% animate -loop 10 00*.gif

それっぽい動画が見えれば無事に完了。

Last modified:2014/04/21 14:25:58
Keyword(s):
References:[3. インストール]