OpenFOAM 2.2.1 を Red Hat Enterprise Linux 5.6 にインストールメモ2013年7月17日 | |
インストール対象マシンRed Hat Enterprise Linux Server release 5.6, x86_64 コンパイルOpenFOAM 2.2.1 のインストールOpenFOAM 2.2.1 のパッケージを展開。 $ tar xvzf OpenFOAM-2.2.1.tgz -C ~/OpenFOAM $ tar xvzf ThirdParty-2.2.1.tgz -C ~/OpenFOAM ~/.bashrc を編集。 #. ~/OpenFOAM/OpenFOAM-2.2.0/etc/bashrc . ~/OpenFOAM/OpenFOAM-2.2.1/etc/bashrc GCC 4.3.3 のコンパイルOpenFOAM 1.6 に付属の GCC 4.3.3 を使用する。セットアップ手順は こちら を参照。コンパイル済みのものをコピーしてもよい。 ここでは OpenFOAM 2.2.0 で使ったものをコピー。 $ mkdir ~/OpenFOAM/ThirdParty-2.2.1/platforms $ cp -r ~/OpenFOAM/ThirdParty-2.2.0/platforms/linux64 ~/OpenFOAM/ThirdParty-2.2.1/platforms OpenFOAM のコンパイル~/OpenFOAM/OpenFOAM-2.2.1/etc/bashrc の foamCompiler=systemと書かれた行を以下のように修正。 #foamCompiler=system foamCompiler=ThirdParty また export WM_COMPILER=Gccと書かれた行を以下のように修正。 #export WM_COMPILER=Gcc export WM_COMPILER=Gcc43 システムにインストール済みの Open MPI を使うために以下のように修正。 #export WM_MPLIB=OPENMPI export WM_MPLIB=SYSTEMOPENMPI Open MPI のパスを通しておく。 ~/OpenFOAM/OpenFOAM-2.2.1/etc/config/settings.sh から Gcc43 の項目がなくなっているので、OpenFOAM 2.2.0 のものからコピーする。 ~/.bashrc を読み込む。 $ . ~/.bashrc OpenFOAM のコンパイルの実行。 $ cd ~/OpenFOAM/OpenFOAM-2.2.1/ $ ./Allwmake 途中でエラーが出た。 $ cd $FOAM_SRC/OpenFOAM $ wmake ... primitives/triad/triad.C:36: error: expected initializer before ‘<’ token primitives/triad/triad.C:39: error: expected initializer before ‘<’ token おそらく gcc のバージョンのせい。コードを修正。 $FOAM_SRC/OpenFOAM/primitives/triad/triad.C 32 namespace Foam 33 { 34 35 template<> 36 //const char* const triad::Vector<vector>::typeName = "triad"; 37 const char* const triad::VectorVector::typeName = "triad"; 38 39 template<> 40 //const char* triad::Vector<vector>::componentNames[] = {"x", "y", "z"}; 41 const char* triad::VectorVector::componentNames[] = {"x", "y", "z"}; $FOAM_SRC/OpenFOAM/primitives/triad/triad.H 66 class triad 67 : 68 public Vector<vector> 69 { 70 71 public: 72 73 typedef Vector<vector> VectorVector; // 追加 ParaView のコンパイルOpenFOAM 2.1.0 のコンパイルのときに ParaView 3.12.0 のコンパイルに失敗したので、OpenFOAM 2.1.0, 2.1.1, 2.2.0 と同様に OpenFOAM 2.0.1 の ParaView 3.10.1 を使うことにする。 $ cp -r ~/OpenFOAM/ThirdParty-2.2.0/platforms/linux64Gcc43/paraview-3.10.1 ~/OpenFOAM/ThirdParty-2.2.1/platforms/linux64Gcc43 $WM_PROJECT_DIR/etc/config/paraview.sh で ParaView のバージョンを変更。 #export ParaView_VERSION=3.12.0 export ParaView_VERSION=3.10.1 ~/.bashrc を読み込みなおす。 ParaView プラグインのコンパイル。 $ cd $FOAM_UTILITIES/postProcessing/graphics/PV3Readers/ $ ./Allwmake paraFoam を起動しようとしたら落ちた。ParaView を起動して OpenFOAM のプラグインをすべて Remove すれば OK。 共有の場所に設置他のユーザーも使えるように共有の場所 (たとえば /opt) に設置。 $ cd ~/OpenFOAM $ su ... # mkdir /opt/OpenFOAM # cp -r OpenFOAM-2.2.1 /opt/OpenFOAM # cp -r ThirdParty-2.2.1 /opt/OpenFOAM /opt/OpenFOAM/OpenFOAM-2.2.1/etc/bashrc を以下のように修正。 #foamInstall=$HOME/$WM_PROJECT foamInstall=/opt/$WM_PROJECT 各ユーザーには ~/.bashrc に以下を追加してもらう。 . /opt/OpenFOAM/OpenFOAM-2.2.1/etc/bashrc | |
PENGUINITIS |