在不是Ubuntu系统下安装OpenFoam,需要采用编译安装的方式。以下以OpenSuSE为例进行编译安装。

1 软件包准备

需要下载两个程序包:

OpenFOAM-4.x-version-4.1.tar.gz
ThirdParty-4.x-version-4.1.tar.gz

2 安装GCC

启动终端Konsole,在终端中输入命令:

sudo zypper install gcc

按提示输入密码并确认安装后,系统自动从网络上下载gcc并进行安装。
安装完毕后利用终端命令测试gcc安装版本:

gcc --version

如下图所示,可看到安装的gcc版本为6.2.1

openfoam4安装要求gcc最低版本为4.5,这里满足要求。

3 安装依赖包

安装OpenFoam的依赖包
利用终端命令:

sudo zypper install -t pattern devel_C_C++
sudo zypper install git-core cmake boost-devel gnuplot mpfr-devel openmpi-devel glu-devel

安装paraview依赖包
利用终端命令:

sudo zypper install libQtWebKit-devel libqt4-devel qt4-assistant-adp-devel qt4-x11-tools

这个安装可能要等上一阵子,看网速快慢。

4 解压OpenFoam文件

下面开始安装OpenFoam。

利用命令创在HOME路径下建文件夹OpenFoam

mkdir $HOME/OpenFoam

解压下载的OpenFoam文件及第三方文件到OpenFoam文件夹中

利用命令修改文件名称

cd $HOME/OpenFoam
mv OpenFOAM-4.x-version-4.1OpenFOAM-4.1
mv ThirdParty-4.x-version-4.1ThirdParty-4.1

此时文件夹中的文件如图所示。

5 修改环境变量

用文本编辑器打开文件$HOME/.bashrc文件,在文件最后一行添加语句

source $HOME/OpenFoam/OpenFOAM-4.1/etc/bashrc

如下图所示。

保存文件并在终端中输入命令以更新环境变量

source $HOME/.bashrc

6 安装第三方软件

第三方软件主要是包括三个软件包:

Scotch and PT-Scotch:用于并行运算中计算区域的分解,必要的包。
ParaView:用于计算后处理,必要的包。

CGAL Computational Geometry Algorithms Library:高级网格生成器FoamyHexMesh用到的包,不是必须的。

终端进入ThirdParty-4.1目录,执行命令

cd $HOME/OpenFoam/ThirdParty-4.1
./Allwmake

程序开始编译,编译完毕后如图所示。

输入命令安装ParaView

./makeParaView

需要的时间比较长,可以去操场跑个马拉松再回来干别的:)。
编译完毕后如图所示。

7 编译安装OpenFOAM

与paraview的安装类似,进入终端,利用命令进行安装。

cd $HOME/OpenFoam/OpenFOAM-4.1
./Allwmake

也可以才用并行编译:

./Allwmake-j

可能需要几个小时的时间,又可以跑一趟马拉松了。

8 测试运行

创建OpenFoam工作路径

mkdir -p $FOAM_RUN

执行以下命令进行测试:

cd $FOAM_RUN
cp -r $FOAM_TUTORIALS/incompressible/simpleFoam/pitzDaily
cd pitzDaily
blockMesh
simpleFoam
paraFoam

至此,OpenFOAM的编译安装到此结束。

OpenSUSE下编译安装OpenFoam的更多相关文章

  1. 不要着急改代码,先想想--centos 6.8下编译安装tmux

    诸位读者新年好,2017开年第一篇博客,请允许我先问候一下看到这篇博客的诸位.写博客是我2017年定下的目标之一,希望我会坚持下去. 最近打算尝试一下tmux这个神器,于是有了这一篇关于思维方式的Bl ...

  2. centos下编译安装lnmp

    centos下编译安装lnmp 本文以centos为背景在其中编译安装nginx搭建lnmp环境. 编译安装nginx时,需要事先安装 开发包组"Development Tools" ...

  3. libCURL开源库在VS2010环境下编译安装,配置详解

    libCURL开源库在VS2010环境下编译安装,配置详解 转自:http://my.oschina.net/u/1420791/blog/198247 http://blog.csdn.net/su ...

  4. LINUX下编译安装PHP各种报错大集合

    本文为大家整理汇总了一些linux下编译安装php各种报错大集合 ,感兴趣的同学参考下. nginx1.6.2-mysql5.5.32二进制,php安装报错解决: 123456 [root@clien ...

  5. Redhat环境下编译安装Google Bazel

    Redhat环境下编译安装bazel 作者:Jack47 目前Google Bazel没有提供各个操作系统下的二进制安装包,只提供源代码,需要我们自己编译安装,详情可以见我翻译的中文版Google B ...

  6. linux下编译安装vim7.4并安装clang_complete插件

    linux下编译安装vim7.4并安装clang_complete插件 因为debian里软件仓库中下载安装的vim是不支持python写的插件的(可以打开vim,在命令模式先输入:py测试一下),导 ...

  7. centos7.2下编译安装&&使用-git代码库

    centos7.2下编译安装git Git简介 Git是一个分布式版本控制系统 Git vs SVN SVN是典型的集中式版本控制起,版本库集中存放在服务器,当我们用自己的电脑干活儿的时候,需要先从中 ...

  8. linux下编译安装curl

    linux下编译安装curl 1.下载curl git clone https://github.com/curl/curl.git 2.在curl目录下生成configure文件 ./buldcon ...

  9. ubuntu15.10下编译安装wine1.8 rc4

    ubuntu15.10下编译安装wine1.8rc4 Wine (“Wine Is Not an Emulator” 的递归缩写)是一个能够在多种 POSIX-compliant 操作系统(诸如 Li ...

随机推荐

  1. 使用C#处理基于比特流的数据

    使用C#处理基于比特流的数据 0x00 起因 最近需要处理一些基于比特流的数据,计算机处理数据一般都是以byte(8bit)为单位的,使用BinaryReader读取的数据也是如此,即使读取bool型 ...

  2. AngularJS过滤器filter-保留小数,小数点-$filter

    AngularJS      保留小数 默认是保留3位 固定的套路是 {{deom | number:4}} 意思就是保留小数点 的后四位 在渲染页面的时候 加入这儿个代码 用来精确浮点数,指定小数点 ...

  3. HTML BOM Browser对象

    BOM:Browser Object Model,即浏览器对象模型,提供了独立于内容的.可以与浏览器窗口进行互动的对象结构. Browser对象:指BOM提供的多个对象,包括:Window.Navig ...

  4. 【原】AFNetworking源码阅读(四)

    [原]AFNetworking源码阅读(四) 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 上一篇还遗留了很多问题,包括AFURLSessionManagerTaskDe ...

  5. EventBus实现activity跟fragment交互数据

    最近老是听到技术群里面有人提出需求,activity跟fragment交互数据,或者从一个activity跳转到另外一个activity的fragment,所以我给大家介绍一个开源项目,EventBu ...

  6. Android Button的基本使用

    title: Android Button的基本使用 tags: Button,按钮 --- Button介绍: Button(按钮)继承自TextView,在Android开发中,Button是常用 ...

  7. AJAX 大全

    本章内容: 简介 伪 AJAX 原生 AJAX XmlHttpRequest 的属性.方法.跨浏览器支持 jQuery AJAX 常用方法 跨域 AJAX JsonP CORS 简单请求.复制请求.请 ...

  8. nodejs利用ajax实现网页无刷新上传图片

    nodejs利用ajax实现网页无刷新上传图片 标签(空格分隔): nodejs 通常情况下上传图片是要通过提交form表单来实现的,但是这又不可避免的产生了网页转. 利用ajax技术和FormDat ...

  9. Spring获取ApplicationContext

    在Spring+Struts+Hibernate中,有时需要使用到Spring上下文.项目启动时,会自动根据applicationContext配置文件初始化上下文,可以使用ApplicationCo ...

  10. PowerShell 数组以及XML操作

    PowerShell基础 PowerShell数组操作 将字符串拆分成数据的操作 cls #原始字符串 $str = "abc,def,ghi,mon" #数据定义 #$StrAr ...