foam-extend-3.1をSlackware Linuxへインストールする

提供: Akionux-wiki
Share/Save/Bookmark
移動: 案内検索

概要

OpenFOAM foam-extend-3.1をSlackware Linuxへインストールしたときの記録。

テスト環境

Slackware Linux x86_64 14.1

手順

OpenFOAMWiki[1]を参考にした。

インストールを始める前に、OpenFOAM-2.3.xなどfoam-extendではないプロジェクトのetc/bashrcを読み込んでないようにしておくことに注意する。 OpenFOAM-2.x.yとは環境変数の設定が重複しているので、互いにetc/bashrc(またはetc/cshrc)が問題を起こすようだ。 そこで、~/.bashrcには次のような行を入れることで、どちらを使うのか選択できるようにすると良いだろう:

alias of23='export FOAM_INST_DIR=~/OpenFOAM;source $HOME/OpenFOAM/OpenFOAM-2.3.x/etc/bashrc'
alias fe31='export FOAM_INST_DIR=~/foam;source $HOME/foam/foam-extend-3.1/etc/bashrc'

ホームディレクトリへfoamというディレクトリを作って、そこへソースコードをダウンロードする:

cd ~
mkdir foam
cd foam
git clone git://git.code.sf.net/p/openfoam-extend/foam-extend-3.1 foam-extend-3.1

bashrcの読み込みと.bashrcへの追記(先に述べたようにすでに追記していれば不要)

cd ~/foam/foam-extend-3.1
source etc/bashrc 
echo "alias fe31='source \$HOME/foam/foam-extend-3.1/etc/bashrc'" >> $HOME/.bashrc

qmakeがあるディレクトリを環境変数QT_BIN_DIRで設定

export QT_BIN_DIR=/usr/bin
echo "export QT_BIN_DIR=/usr/bin" >> etc/prefs.sh

コンパイル

./Allwmake.firstInstall | tee log.Allwmake.firstInstall

runディレクトリを作る:

mkdir -p $FOAM_RUN

bashrcを読んでいればrunrunディレクトリに移動できる

run

tutでチュートリアルディレクトリへ移動:

tut

トラブルシューティング

paraFoamが動かない

paraFoamを実行すると、次のようなエラーが出る:

% paraFoam
created temporary 'cavity.OpenFOAM'
ERROR: In /home/akio/OpenFOAM/foam-extend-3.1/ThirdParty/rpmBuild/BUILD/ParaView-v4.0.1-source/VTK/GUISupport/Qt/vtkEventQtSlotConnect.cxx, line 68
vtkEventQtSlotConnect (0x134e6e0): Cannot connect NULL objects.

ERROR: In /home/akio/OpenFOAM/foam-extend-3.1/ThirdParty/rpmBuild/BUILD/ParaView-v4.0.1-source/VTK/GUISupport/Qt/vtkEventQtSlotConnect.cxx, line 68
vtkEventQtSlotConnect (0x134e6e0): Cannot connect NULL objects.

/home/akio/OpenFOAM/foam-extend-3.1/bin/paraFoam: 122 行: 19765 Segmentation fault      (コアダンプ) paraview --data="$caseFile"

これは、OpenFOAM-2.3.xの環境変数の設定が残っていたためであった。

References

  1. Installation/Linux/foam-extend-3.1 - OpenFOAMWiki http://openfoamwiki.net/index.php/Installation/Linux/foam-extend-3.1