OpenFOAM 1.6 を Itanium マシンにインストールメモ2010年12月22日 | |
インストール対象マシンItanium 2 (IA-64)、Red Hat Enterprise Linux WS release 4、GCC 3.4.6。 OpenFOAM のインストールgcc のバージョンが古いため、まず gcc をコンパイルする必要がある。そのため gcc のソースが付属している OpenFOAM 1.6 をインストールする。 ここ から OpenFOAM 1.6 のソースを入手。
パッケージを展開。 $ mkdir ~/OpenFOAM-1.6 $ ln -s ~/OpenFOAM-1.6 ~/OpenFOAM $ tar xvzf OpenFOAM-1.6.General.gtgz -C ~/OpenFOAM $ tar xvzf ThirdParty-1.6.General.gtgz -C ~/OpenFOAM ~/.bashrc に以下を追加。 . ~/OpenFOAM/OpenFOAM-1.6/etc/bashrc ~/.bashrc を読み込む。 $ . ~/.bashrc OpenFOAM の gcc がないため .bashrc 読み込み時にその旨のメッセージが出る。OpenFOAM の gcc をコンパイルするため、OpenFOAM のではなくシステムの gcc を使うように指定する。~/OpenFOAM/OpenFOAM-1.6/etc/settings.sh の compilerInstall の値を以下のように修正。 ~/OpenFOAM/OpenFOAM-1.6/etc/settings.sh #compilerInstall=OpenFOAM compilerInstall=System ~/.bashrc を読み込む。 $ . ~/.bashrc gcc をコンパイルするには ~/OpenFOAM/ThirdParty-1.6 の makeGcc を実行する。gmp, mpfr, gcc のコンパイルが実行されるが、mpfr のファイルが足りないらしくエラーになる。ここ から mpfr-2.4.1.tar.gz を入手し、元のものと入れ替える。 $ mv ~/OpenFOAM/ThirdParty-1.6/mpfr-2.4.1 ~/OpenFOAM/ThirdParty-1.6/mpfr-2.4.1.org $ tar xvzf mpfr-2.4.1.tar.gz -C ~/OpenFOAM/ThirdParty-1.6 また、makeGcc がそのままではちゃんと動かないので、以下のように修正する。 ~/OpenFOAM/ThirdParty-1.6/makeGcc
...
#
# Bulid GMP
#
if [ ! -d $GMPROOT ]
then
(
# make distclean \
# && mkdir $GMP_DIR/build \
mkdir $GMP_DIR/build \
...
#
# Build MPFR
#
if [ ! -d $MPFRROOT ]
then
(
# make distclean \
# && mkdir $MPFR_DIR/build \
mkdir $MPFR_DIR/build \
...
#
# Build GCC
#
if [ ! -d $GCCROOT ]
then
(
# make distclean \
# && mkdir $GCC_DIR/build \
mkdir $GCC_DIR/build \
...
gcc のコンパイルを開始。 $ cd ~/OpenFOAM/ThirdParty-1.6 $ ./makeGcc gcc-4.3.3 もし途中で失敗した場合は、対策を取った後、失敗したパッケージの build ディレクトリを削除してやりなおす。 無事終わったら、今度は OpenFOAM をコンパイルする。OpenFOAM の gcc を使うように指定。 ~/OpenFOAM/OpenFOAM-1.6/etc/settings.sh compilerInstall=OpenFOAM #compilerInstall=System また、~/OpenFOAM/OpenFOAM-1.6/etc/bashrc を以下のように修正する。 ~/OpenFOAM/OpenFOAM-1.6/etc/bashrc
...
case $WM_ARCH in
...
ia64)
WM_ARCH=linuxIA64
#export WM_COMPILER=I64
export WM_COMPILER=Gcc
;;
...
.bashrc を読み込む。 $ . ~/.bashrc OpenFOAM のコンパイル。 $ cd ~/OpenFOAM/OpenFOAM-1.6 $ ./Allwmake 動作確認。 $ cp -r $FOAM_TUTORIALS/incompressible/icoFoam/cavity . $ cd cavity $ blockMesh $ icoFoam | |
| PENGUINITIS | |