Update build_linux authored by Adrien Crovato's avatar Adrien Crovato
......@@ -3,62 +3,53 @@ Note that these build instructions are using the GNU compilers but Intel's compi
**Get the code**
```bash
sudo apt-get install git
sudo apt-get install git-lfs
git lfs install # enable large file support
# ssh only
git clone git@gitlab.uliege.be:am-dept/amfe.git
sudo apt install git git-lfs
git clone git@gitlab.uliege.be:am-dept/amfe.git # ssh only for developers
```
**Required packages**
```bash
# Common
sudo apt-get update
sudo apt-get install build-essential
sudo apt-get install cmake
sudo apt update
sudo apt install build-essential cmake
sudo apt-get install swig
sudo apt-get install libeigen3-dev
sudo apt-get install gmsh
# Python 3
sudo apt-get install python3-dev
sudo apt-get install python3-mpi4py python3-numpy python3-scipy python3-matplotlib
sudo apt-get install libvtk7-dev python3-vtk7
sudo apt install python3-dev
python3 -m pip install numpy mpi4py matplotlib
# Gmsh
python3 -m pip install gmsh
```
```bash
# Intel Math Kernel Libraries (MKL) and Threading Building Blocks (TBB)...
cd /tmp
sudo wget https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS-2019.PUB
sudo apt-key add GPG-PUB-KEY-INTEL-SW-PRODUCTS-2019.PUB
sudo rm GPG-PUB-KEY-INTEL-SW-PRODUCTS-2019.PUB
sudo wget https://apt.repos.intel.com/setup/intelproducts.list -O /etc/apt/sources.list.d/intelproducts.list
sudo sh -c 'echo deb https://apt.repos.intel.com/mkl all main > /etc/apt/sources.list.d/intel-mkl.list'
sudo sh -c 'echo deb https://apt.repos.intel.com/tbb all main > /etc/apt/sources.list.d/intel-tbb.list'
sudo apt-get update
sudo apt-get install intel-mkl-64bit-2019.2-057
sudo apt-get install intel-tbb-64bit-2019.2-057
echo "source /opt/intel/mkl/bin/mklvars.sh intel64" >> ~/.bashrc
echo "source /opt/intel/tbb/bin/tbbvars.sh intel64" >> ~/.bashrc
(https://www.intel.com/content/www/us/en/docs/oneapi/installation-guide-linux/2025-2/base-apt.html)
wget -O- https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB | gpg --dearmor | sudo tee /usr/share/keyrings/oneapi-archive-keyring.gpg > /dev/null
echo "deb [signed-by=/usr/share/keyrings/oneapi-archive-keyring.gpg] https://apt.repos.intel.com/oneapi all main" | sudo tee /etc/apt/sources.list.d/oneAPI.list
sudo apt update
sudo apt install intel-oneapi-tbb-devel intel-oneapi-mkl-devel
echo "source /opt/intel/oneapi/tbb/latest/env/vars.sh" >> ~/.bashrc
echo "source /opt/intel/oneapi/mkl/latest/env/vars.sh" >> ~/.bashrc
# ... or Openblas and default TBB
sudo apt-get install libopenblas-dev
sudo apt-get install libtbb-dev
sudo apt install libopenblas-dev
sudo apt install libtbb-dev
```
**Optional packages**
```bash
sudo apt-get install libmumps-seq-dev
sudo apt-get install doxygen
sudo apt-get install graphviz
sudo apt install libmumps-seq-dev
sudo apt install doxygen graphviz
sudo apt install libvtk9-dev
python3 -m pip install vtk
```
**Compilation**
```bash
mkdir build && cd build
cmake ..
make [-j4]
[make install] # to install
[make dox] # to build the documentation
ctest [-E exclude_pattern] [-R include_pattern] [-j4]
```
For a complete list of options, refer to the [build](Build) page.
**Test**
**Install**
```bash
cd build
ctest [-E exclude_pattern] [-R include_pattern] [-j4]
python3 -m pip install . [--user]
```
\ No newline at end of file