Installation/Linux/foam-extend-4.1/Ubuntu

From OpenFOAMWiki

1 Introduction

This page is dedicated to preparing an Ubuntu system for installing the foam-extend project OF Version 41ext.png.


2 Ubuntu versions

2.1 Ubuntu 18.04 LTS

Run the following commands:

sudo apt-get update
sudo apt-get install git-core build-essential binutils-dev cmake flex \
zlib1g-dev  libncurses5-dev curl bison gnuplot gnuplot-qt gnuiplot-data \
libxt-dev rpm mercurial graphviz python python-dev python3 python3-dev

Then follow the instructions on the previous page, subsection Get the source code. Ubuntu 18.04 LTS comes with gcc/g++ 7.4.0 as default, so does not need any other adaptation of the standard process.

OPTIONAL: Preparations if you want to compile the version of Paraview that comes with foam-extend-4.1:

Paraview needs the QT4 library to compile:

sudo apt-get install qt4-dev-tools libqt4-dev

If you want to compile Paraview you also need to tell foam-extend where to find QT4:

cd ~/foam/foam-extend-4.1
echo "export QT_BIN_DIR=/usr/bin" >> etc/prefs.sh
echo "export WM_THIRD_PARTY_USE_QT_5111=1" >> etc/prefs.sh
echo "export WM_THIRD_PARTY_USE_PARAVIEW_552=1" >> etc/prefs.sh
 
source etc/bashrc


Now you can start the compilation by issuing:

./Allwmake.firstInstall

2.2 Ubuntu 20.04 LTS

Run the following commands:

sudo apt-get update
sudo apt-get install git-core build-essential binutils-dev cmake flex \
zlib1g-dev libncurses5-dev curl bison \
libxt-dev rpm mercurial graphviz python python-dev  gcc-7 g++-7

Then follow the instructions on the previous page, subsection Get the source code, but keep in mind to run a few additional commands before you run source etc/bashrc in order to set the environment for gcc/g++ 7 to be used instead of gcc/g++ 9. More specifically, the commands should be executed something like this:

cd ~/foam/foam-extend-4.1
 
echo "export WM_CC='gcc-7'"  >> etc/prefs.sh
echo "export WM_CXX='g++-7'"  >> etc/prefs.sh
 
source etc/bashrc

Then before running Allwmake.firstInstall, run the following commands:

sed -i -e 's=rpmbuild --define=rpmbuild --define "_build_id_links none" --define=' ThirdParty/tools/makeThirdPartyFunctionsForRPM
sed -i -e 's/gcc/\$(WM_CC)/' wmake/rules/linux64Gcc/c
sed -i -e 's/g++/\$(WM_CXX)/' wmake/rules/linux64Gcc/c++

Now you can start the compilation by issuing:

./Allwmake.firstInstall

This will most likely ask you, if you want to proceed without compiling paraview. I recommend that you answer "yes" and install the current version of paraview separately, since most beginner's problems with the installation of (Open)FOAM are related to the compilation of paraview rather than (Open)FOAM itself.