centos7.7安装OpenFOAM-v2012和插件swak4Foam
获取OpenFOAM源代码
链接: .
直接下载源代码与第三⽅包上传⾄服务器
或者
$cd ~
$mkdir OpenFOAM
$cd OpenFOAM
$git clone 下载⽹页链接
$git clone 下载⽹页链接
解压
tar -
tar -
前期准备⼯作
// 下载⼀些必要的包(⼤多数服务器⾃带)
sudo yum groupinstall -y 'Development Tools'
sudo yum install zlib-devel libXext-devel libGLU-devel libXt-devel libXrender-devel libXinerama-devel libpng-devel libXrandr-devel libXi-devel libXft-devel libj peg-turbo-devel libXcursor-devel readline-devel ncurses-devel python python-devel cmake qt-devel qt-assistant mpfr-devel gmp gmp-devel
centos7.7系统⾃带是cmake2,不更新得话,后续openfoam编译中可选组件(ADIOS2)会出现构建问题,但OpenFOAM会继续保持正常功能
根据官⽹推荐,更新:
//需要输⼊密码
sudo yum update
sudo yum install build-essential autoconf autotools-dev cmake gawk gnuplot
sudo yum install flex libfl-dev libreadline-dev zlib1g-dev openmpi-bin libopenmpi-dev mpi-default-bin mpi-default-dev
sudo yum install libgmp-dev libmpfr-dev libmpc-dev
//如果打算使⽤系统组件,root⽤户可以更新如下系统组件
yum install libscotch-dev libptscotch-dev libfftw3-dev libboost-system-dev libboost-thread-dev libcgal-dev
注意这⾥不包括paraview所需要的,安装paraview还需要其他组件
⼀般执⾏完这些命令,就基本齐全了,重要的openmpi⽆需⾃⼰再安装了
设置环境变量
// 会弹出窗⼝
float是什么意思 英语gedit $HOME/.bashrc
//若是⽤xshell且没下xmanager,则
vim $HOME/.bashrc
//将此句输⼊⽂件末尾centos和ubuntu
source $HOME/OpenFOAM/OpenFOAM-v2012/etc/bashrc
//下⾯两句是之后编译OpenFOAM所需要的并⾏的链接,这⾥是提前加进去了,在编译之前加就⾏
export PATH=$PATH:$HOME/OpenFOAM/ThirdParty-v2012/platforms/linux64Gcc/openmpi-4.0.3/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$HOME/OpenFOAM/ThirdParty-v2012/platforms/linux64Gcc/openmpi-4.0.3/lib //关闭终端,⾃动保存
//或者输⼊source ~/.bashrc
构建第三⽅包
cd ThirdParty-V2012帝国cms多级菜单模板
./Allwmake
//如果重复运⾏了编译,最好在此步之前执⾏⼀下./Allclean
构建OpenFOAM
cd $WM_PROJECT_DIR
./Allwmake -j > log.make 2>&1
//会有些久,耐⼼等待
icoFoam -help
//如果输出版本信息就安装成功了
blockMesh
//也可以输⼊这个检查是否安装成功,如果报错不到⽂件,就成功了
//其实只要不是command not found,基本都是安装成功
安装插件swak4foam
可参考链接: .
从此链接可以跳转⾄环境构建、下载、安装、错误检查等等
mkdir -p $FOAM_RUN
cd "$HOME/OpenFOAM/$USER-$WM_PROJECT_VERSION"
sudo yum install mercurial编程是学些什么东西二年级
//这步很重要,不安装会出错
hg clone hg.code.sf/p/openfoam-extend/swak4Foam swak4Foam
//如果下载不了,在上⾯的官⽹链接中的download中尝试其他路径
cd swak4Foamc语言中指针变量的定义
./AllwmakeAll
/
/还是⼀样,如果之前有运⾏过,建议执⾏./Allclean
//需要⼀点时间,编译过程出现warning很正常,可以正常使⽤
funkySetFields
//检查是否安装成功,若出现版本信息,则安装成功
使⽤需要在op⽂件中的system/controldict中添加lib,具体参见上述链接
⼀些其他的题外话
之前搜OP安装时,都会有如下步骤,但是在我执⾏完如上所有步骤时,⼀切都运⾏正常。但还是把总结的前⼈⼀些过往经验放上来:
⼀些必要的包下载:
主要是boost、CGAL、cmake、openmpi,其中除了cmake之外,其他在第三⽅包中都有,可以⾃⾏下载想要的版本解压⾄Third⽂件中,cmake在centos系统中也⾃带了,若要构建paraview需要装新版cmake
$cd ThirdParty-5.x
$mkdir downloadregionprops3
$wget -P download /files/v3.9/cmake-3.9.
$wget -P download github/CGAL/cgal/releases/download/releases%2FCGAL-4.10/CGAL-4.
$wget -P download sourceforge/projects/boost/files/boost/1.55.0/boost_1_55_0.tar.bz2
$wget -P download /software/ompi/v2.1/downloads/openmpi-2.1.1.tar.bz2
//新版本openmpi已经到4
$wget -P download /files/v5.4
//paraview下载时间可能很长
//解压
$tar -xzf download/cmake-3.9.
$tar -xJf download/CGAL-4.
$tar -xjf download/boost_1_55_0.tar.bz2
$tar -xjf download/openmpi-2.1.1.tar.bz2
关于构建openmpi
cd openmpi-4.0.3/
./configure
//仅root可这样,如果直接configure,那默认安装在/usr/lib64/openmpi/bin下,普通⽤户没有访问权限,在之后的make install执⾏时会报recursive的错误,即没有权限安装;普通⽤户要按下⾯设定安装⽬录,否则后⾯安装会⽆权访问)
//⽂件要⾃⼰先建⽴,⽐如说
./configure --prefix=/home/xy/openmpi
make && make install
//在执⾏make install时,会出现权限不够⽆法写⼊的情况,反复调整,⽆果。因此还是建议跟前⾯正⽂⼀样yum⼀下必要的软件
关于构建swak4foam
之前在ubantu20系统上安装swak4Foam插件时,⼀直不成功,有⼀个原因是新版ubantu已经删除了python;若输出的log⽂件有此问题得话,有两种⽅法供解决:
1. install a package that does that (I hear Ubuntu 20.04 has such a package
2. set a symbolic link in a directory in PATH that points to either python2 or 3
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论