How to install SALOME 9.9.0 on CentOS-7.6

Install SALOME from source
Thanks NabilG for your help. https://discourse.salome-platform.org/t/configure-pmml-error/375/7

1、Unzip SALOME
tar zxvf SALOME-9.9.0-CO7-SRC.tar.gz
cd SALOME-9.9.0-CO7-SRC

==========================================
2、Load the sat environment variable
source ./sat/complete_sat.sh

==========================================
3、get the source and apply the patches
./sat/sat prepare SALOME-9.9.0

==========================================
4、Install depend

yum install -y gcc gcc-c++ gcc-gfortran centos-release-scl devtoolset-8 \
    atk automake bison bzip2-devel cairo cmake expat-devel fftw fftw-devel flac-libs flex fontconfig fontconfig-devel \
    fribidi gd gdk-pixbuf2 geos geos-devel giflib giflib-devel graphite2 gsl gsl-devel gsm gtk2 harfbuzz jbigkit-libs libasyncns \
    libcurl-devel libgeotiff libgeotiff-devel libgfortran libglvnd libglvnd-egl libglvnd-glx libglvnd-opengl libICE libicu \
    libjpeg-turbo libjpeg-turbo-devel libogg libpng-devel libquadmath libSM libsndfile libthai libtiff libtiff-devel libtool \
    libvorbis libX11 libXau libxcb libxcb-devel libXcomposite libXcursor libXdamage libXext libXfixes libXft libXft-devel libXi \
    libXi-devel libXinerama libxkbcommon-devel libxkbcommon-x11-devel libXmu libXmu-devel libXpm libXpm-devel libXrandr libXrender \
    libXt libXtst mesa-libGLU mesa-libGLU-devel openssl-devel pango pulseaudio-libs pulseaudio-libs-glib2 sqlite-devel tbb \
    tbb-devel tcl tk xcb-util-devel

==========================================
5、Add ‘cppunit’ to the build_depend items in section default
vim ./PROJECT/products/pmml.pyconf

build_depend :
[
  'cmake'
  'swig'
  'doxygen'
  'cppunit'
]

==========================================
6、OMPI add the allow-run-as-root option

Add the following to line 62
vim ./PROJECT/products/compil_scripts/TopIIVolMesh.sh

    sed -i 's/mpirun -n \$(NP)/mpirun --allow-run-as-root -np \$(NP) --oversubscribe/g' src/*/Makefile.am

vim ./PROJECT/products/compil_scripts/C3PO.sh

if [ -n "$MPI_ROOT_DIR" ]; then
    # Ensure tests will not fail if user is root
    find . -type f -print0 |xargs -0 grep mpirun |cut -d ':' -f1|xargs sed  -i 's/mpirun /mpirun --allow-run-as-root /g'
    ctest .
else
    # these tests use MPI...
    ctest -E "Dussaix_seq|Dussaix_master_worker|Dussaix_collaborative|Listings_collaboratif"
fi

==========================================
7、Build SALOME
./sat/sat -t compile SALOME-9.9.0
./sat/sat environ SALOME-9.9.0
./sat/sat launcher SALOME-9.9.0

3 Likes