Please refresh the page if equations are not rendered correctly.
---------------------------------------------------------------
0. 系统
目前我在Ubuntu 20.04.1系统上亲测安装正常,只需要按照官方教程(链接:Download OpenFOAM v8 Ubuntu)安装预编译版本即可,不需要进行源码安装。因此建议直接按官方教程。
本文进行的测试过程中,在Ubuntu 22.04系统上无法安装qt5-default包(系统上默认已经移除),会导致Paraview编译失败。
在Ubuntu 20.04.5版本系统上出现libc6版本过高和G++安装失败的问题,可能需要将libc6降级。这方面需要进一步测试。
综上,建议直接使用Ubuntu 20.04.1系统搭配OpenFOAM V8.
1. 软件依赖
1.1 编译器
支持的编译器有:
- GCC version 5.4 or above;
- LLVM Clang version 3.6 or above;
- Intel ICC version 17.0.4 or above.
本文以GCC为例。查看GCC版本:
gcc --version
如果显示:
Command 'gcc' not found
则使用如下命令安装:
sudo apt install gcc
如果以上命令报错,则使用:
sudo apt update
sudo apt install build-essential
1.2 更多依赖按如下命令逐一执行安装(Ubuntu 18.04或更高版本)。
sudo apt-get install build-essential cmake git ca-certificates
sudo apt-get install flex libfl-dev bison zlib1g-dev libboost-system-dev libboost-thread-dev libopenmpi-dev openmpi-bin gnuplot libreadline-dev libncurses-dev libxt-dev
sudo apt-get install libqt5x11extras5-dev libxt-dev qt5-default qttools5-dev curl
其中,第一条是编译依赖,第二条为OpenFOAM依赖,第三条为Paraview的依赖(如QT等)。
在Ubuntu 22.04版本系统中安装QT相关依赖时,显示
E: Package 'qt5-default' has no installation candidate
2. 源代码下载
2.1 可以使用git或者直接在GitHub下载:
使用Git:
git clone https://github.com/OpenFOAM/OpenFOAM-8.git
git clone https://github.com/OpenFOAM/ThirdParty-8.git
2.2 Github直接下载:
OpenFOAM/OpenFOAM-8: OpenFOAM Foundation repository for OpenFOAM version 8
OpenFOAM/ThirdParty-8: OpenFOAM-8 third-party library compilation scripts
(将版本号8改为相应的数字即可安装相应的OpenFOAM版本)
3. 环境变量设置
3.1 打开设置文件:
gedit ~/.bashrc
在弹出的.bashrc
文件最后加入source $HOME/OpenFOAM/OpenFOAM-8/etc/bashrc
,然后在命令行中执行:
source $HOME/.bashrc
3.2 源代码解压
将源代码解压到$HOME/OpenFOAM/文件夹下,文件目录如下所示:
Home
└── OpenFOAM
├── OpenFOAM-8
└── ThirdParty-8
如果源代码放在其他文件夹下,则需要更改环境变量的目录。
3.3 测试设置是否正确
在命令行中输入
echo $WM_PROJECT_DIR
返回${HOME}/OpenFOAM/OpenFOAM-dev
即设置无误。
4. 第三方软件安装
OpenFOAM所依赖的第三方软件有:
OpenFOAM relies some third-party software packages (in addition to OpenMPI) for some important tasks:
- Scotch and PT-Scotch for domain decomposition for parallel running (recommended/essential).
- ParaView visualization application (essential, without an alternative, compatible visualisation tool)
- CGAL Computational Geometry Algorithms Library used by the experimental mesher, foamyHexMesh (not essential).
4.1 安装Scotch/PT-Scotch
在$HOME/OpenFOAM/ThirdParty-8
下打开命令行,执行:
./Allwmake
4.2 安装Paraview
同一个命令行下执行:
./makeParaView
Paraview的编译时间较长,一般电脑需要1小时至数个小时。安装完成后在命令行中执行:
wmRefresh
更新环境变量。
5. 编译OpenFOAM
切换到OpenFOAM的源码文件夹下,打开命令行,执行下面命令的任一行即可:
./Allwmake # 单线程编译,较慢
./Allwmake -j # 使用所有可用的CPU核心
一般8核心编译需要1小时左右,单核心则需要数个小时。
Comments NOTHING