加载中…
个人资料
天乐树
天乐树
  • 博客等级:
  • 博客积分:0
  • 博客访问:1,061,088
  • 关注人气:1,058
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
相关博文
推荐博文
谁看过这篇博文
加载中…
正文 字体大小:

CentOS 6.2下编译OpenFOAM

(2012-05-15 17:14:10)
标签:

centos

openfoam

编译

it

分类: OpenFoam

之前在自强3000上成功编译OpenFOAM 2.1.X,最近新买一台服务器,自己装的CentOS 6.2系统,默认缺少不少东西。因此更换了编译方法:

 

系统环境至少需要补上:

yum install libedit.x86_64
yum install libtool-ltdl-devel.x86_64
yum install glibc-devel.i686
yum install glibc.i686
yum install glibc-static.i686

yum install gnuplot

 

下载:

OpenFOAM-2.1.0.gz

ThirdParty-2.1.0.gz

gcc-4.5.1.tar.gz

gmp-5.0.1.tar.gz

mpc-0.8.1.tar.gz

mpfr-2.4.2.tar.gz

cmake-2.8.8.tar.gz

qt-everywhere-opensource-src-4.7.3.tar.gz

 

1. 解压安装包

tar xzf OpenFOAM-2.1.0.gz
tar xzf ThirdParty-2.1.0.gz

 

2. 进入OpenFOAM-2.1.0目录修改/etc/bashrc文件和/etc/config/setting.sh文件

cd OpenFOAM-2.1.0  

gedit /etc/bashrc

foamCompiler=system改为

   foamCompiler=ThirdParty

CentOS <wbr>6.2下编译OpenFOAM

保存退出。

gedit /etc/config/setting.sh

由于我下载并将使用gcc-4.5.1编译器来编译因此修改Gcc的版本等,由于我没有修改/etc/bashrc中调用的gcc版本,因此我需要修改 /etc/config/setting.sh中case Gcc字段的内容,不修改/etc/bashrc中gcc版本号的好处就是生成的platforms中的文件夹为 linux64Gcc 和linux64GccDPOpt,不然可能就是linux64Gcc45 ...反正我是看着不爽

注释掉 Gcc字段的内容 将Gcc45 的内容复制过去,把版本号改一下:

CentOS <wbr>6.2下编译OpenFOAM
保存,退出。

 

3. 编译GCC、CMAKE、Qt神马的

cd ThirdParty-2.1.0

gcc-4.5.1.tar.gz

gmp-5.0.1.tar.gz

mpc-0.8.1.tar.gz

mpfr-2.4.2.tar.gz

cmake-2.8.8.tar.gz

qt-everywhere-opensource-src-4.7.3.tar.gz

统统复制到这个文件夹下(/OpenFOAM/ThirdParty-2.1.0),并解压 tar xzf gcc* ....略

编译:

./makeGcc

如果不出意外的话(系统环境正确,务必执行前面系统环境要求的部分),编译会成功的。

 

4. 修改 ~/.bashrc文件并source

gedit ~/.bashrc

添加:

source $HOME/OpenFOAM/OpenFOAM-2.1.0/etc/bashrc

#QT
export PATH=$HOME/OpenFOAM/platforms/linux64Gcc/qt-4.7.3/bin:$PATH

export LD_LIBRARY_PATH=$HOME/OpenFOAM/platforms/linux64Gcc/qt-4.7.3/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=$HOME/OpenFOAM/platforms/linux64GccDPOpt/qt-4.7.3/lib:$LD_LIBRARY_PATH

#Cmake

export PATH=$HOME/OpenFOAM/platforms/linux64Gcc/cmake-2.8.8/bin:$PATH

 

保存退出。

source ~/.bashrc

编译Cmake和Qt

./makeCmake

./makeQt 

 

5. 编译OpenFOAM

并行编译,进程数16个,带颜色显示进程:

export WM_NCOMPPROCS=16
export WM_COLOURS="black blue green cyan red magenta yellow"
串行编译,可无视上面的两句。

cd $WM_PROJECT_DIR

./Allwmake

 

6. 编译paraFOAM

cd $WM_THIRD_PARTY_DIR

./makeParaView

cd $FOAM_UTILITIES/postProcessing/graphics/PV3ReaderswmSET
./Allwclean
./Allwmake

7. 测试

mkdir -p $FOAM_RUN
cp -r $FOAM_TUTORIALS $FOAM_RUN
cd $FOAM_RUN/tutorials/incompressible/icoFoam/cavity
blockMesh
icoFoam
paraFoam

 

编译结束:

CentOS <wbr>6.2下编译OpenFOAM
CentOS <wbr>6.2下编译OpenFOAM

CentOS <wbr>6.2下编译OpenFOAM

CentOS <wbr>6.2下编译OpenFOAM

CentOS <wbr>6.2下编译OpenFOAM

 

执行并行计算的算例,重组后使用paraFoam查看结果:


CentOS <wbr>6.2下编译OpenFOAM





mxio

2012.5.15


0

阅读 评论 收藏 转载 喜欢 打印举报/Report
  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

      

    新浪BLOG意见反馈留言板 电话:4000520066 提示音后按1键(按当地市话标准计费) 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有