Installation/Linux/foam-extend-4.0/openSUSE

From OpenFOAMWiki
< Installation‎ | Linux‎ | foam-extend-4.0
Revision as of 13:30, 28 December 2018 by Wyldckat (Talk | contribs)

1 Introduction

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


2 openSUSE versions

2.1 openSUSE 42.1

Follow these steps:

  1. Switch to root mode (administrator), to install the necessary packages:
    sudo -s
    • If the 'sudo' command tells you're not in the sudoers list, then run:
      su -
  2. Install the necessary packages:
    zypper install -t pattern devel_C_C++
    zypper install cmake libqt4-devel qt4-x11-tools qt4-assistant-adp-devel gnuplot openmpi-devel boost-devel cgal-devel gmp-devel mpfr-devel libQtWebKit-devel python-devel git mercurial rpm-build
  3. Now exit from the root mode:
    exit
  4. Note: In order for Open-MPI to be properly accessible, you will need to either logout and then log back in or run the following command in each terminal in the meantime:
    source /etc/profile.d/mpi-selector.sh

Then continue following the instructions on the previous page, subsection Get the source code, although keep in mind to run the following commands before you run source etc/bashrc:

echo unset WM_THIRD_PARTY_USE_CMAKE_322 >> etc/prefs.sh
echo export WM_MPLIB=SYSTEMOPENMPI >> etc/prefs.sh

More specifically, the commands should be executed something like this:

cd ~/foam/foam-extend-4.0
 
echo unset WM_THIRD_PARTY_USE_CMAKE_322 >> etc/prefs.sh
echo export WM_MPLIB=SYSTEMOPENMPI >> etc/prefs.sh
 
source etc/bashrc

And then, in order for the library parMetisDecomp to build properly, you need to run once the following command:

sed -i -e 's=\-L$(OPENMPI.*=$(PLIBS)=' $FOAM_SRC/decompositionMethods/parMetisDecomp/Make/options

Note: Using the openSUSE's own Metis system installation did not work at the time of this writing (23:09, 19 December 2015 (CET)).

2.2 openSUSE 15.0

WARNING: These steps are currently being written and under testing! Currently ParaView doesn't build due to the GCC version and swak4Foam doesn't build due to the default Bison version.


Follow these steps:

  1. Switch to root mode (administrator), to install the necessary packages:
    sudo -s
    • If the 'sudo' command tells you're not in the sudoers list, then run:
      su -
  2. Install the necessary packages:
    zypper install -t pattern devel_C_C++
    zypper install cmake libqt4-devel qt4-x11-tools qt4-assistant-adp-devel gnuplot openmpi-devel boost-devel cgal-devel gmp-devel mpfr-devel python-devel git mercurial rpm-build
  3. Now exit from the root mode:
    exit
  4. Note: In order for Open-MPI to be properly accessible, you will need to either logout and then log back in or run the following command in each terminal in the meantime:
    mpi-selector --set openmpi
    source /etc/profile.d/mpi-selector.sh

Then continue following the instructions on the previous page, subsection Get the source code, although keep in mind to run the following commands before you run source etc/bashrc:

echo unset WM_THIRD_PARTY_USE_CMAKE_322 >> etc/prefs.sh
echo export WM_MPLIB=SYSTEMOPENMPI >> etc/prefs.sh
echo export WM_THIRD_PARTY_USE_BISON_27=true >> etc/prefs.sh

More specifically, the commands should be executed something like this:

cd ~/foam/foam-extend-4.0
 
echo unset WM_THIRD_PARTY_USE_CMAKE_322 >> etc/prefs.sh
echo export WM_MPLIB=SYSTEMOPENMPI >> etc/prefs.sh
echo export WM_THIRD_PARTY_USE_BISON_27=true >> etc/prefs.sh
 
source etc/bashrc

And then, in order for the library parMetisDecomp to build properly, you need to run once the following command:

sed -i -e 's=\-L$(OPENMPI.*=$(PLIBS)=' $FOAM_SRC/decompositionMethods/parMetisDecomp/Make/options

And a fix is needed for building ParaView 4.4.0 with GCC 7, so run the following command to apply the fix:

sed -i -e "s_\(%build\)_\1\nsed -i -e 's=\\\\[345\\\\]=\\\\[3-7\\\\]=' ./VTK/CMake/GenerateExportHeader.cmake ./VTK/CMake/vtkCompilerExtras.cmake_" ThirdParty/rpmBuild/SPECS/ParaView-4.4.0.spec

Note: Using the openSUSE's own Metis system installation requires building with 64-bit labels.