From 403ecaedd33ec50abff8927170191bb2be2399b6 Mon Sep 17 00:00:00 2001 From: Gerasimos Chourdakis Date: Mon, 4 Jul 2022 23:14:40 +0200 Subject: [PATCH 01/13] Remove Ubuntu 16.04, add warning for 18.04 --- .../installation-source-dependencies.md | 24 ++++--------------- 1 file changed, 4 insertions(+), 20 deletions(-) diff --git a/pages/docs/installation/installation-source-dependencies.md b/pages/docs/installation/installation-source-dependencies.md index 846c8fe152..e9cd38f521 100644 --- a/pages/docs/installation/installation-source-dependencies.md +++ b/pages/docs/installation/installation-source-dependencies.md @@ -275,6 +275,10 @@ The same instructions apply for later Ubuntu releases. ### Ubuntu 18.04 Bionic Beaver +{% warning %} +The last release of preCICE to support Ubuntu 18.04 was [preCICE v2.3.0](https://github.com/precice/precice/releases/tag/v2.3.0). +{% endwarning %} + With every release, we also ship [binary packages for Ubuntu 18.04](https://github.com/precice/precice/releases). However, if you still want to build from source, almost everything is available through the distribution's repositories: @@ -286,26 +290,6 @@ sudo apt install build-essential cmake libeigen3-dev libxml2-dev libboost-all-de If you don't plan to use RBF mappings in large parallel cases you can continue without installing PETSc and build with `-DPRECICE_PETScMapping=OFF`. If you need PETSc, follow the steps in the [PETSc](#petsc) section and you are done. -### Ubuntu 16.04 Xenial Xerus - -In Ubuntu 16.04, only a fraction of packages is available through the distribution's repositories. -Further packages needs to be build from source. -First install the available packages: - -```bash -sudo apt update && \ -sudo apt install build-essential g++-5 libxml2-dev python3-dev python3-numpy -``` - -Next, you need to install [CMake](#cmake), [Eigen](#eigen) and [boost](#boost) as descibed in their respective sections. - -If you don't plan to use RBF mappings in large parallel cases you can continue without installing PETSc and [build with `-DPRECICE_PETScMapping=OFF`](Building:-Using-CMake#options). -If you need PETSc, follow the steps in the [PETSc](#petsc) section and you are done. - -{% note %} -The repositories contain a package `libeigen3-dev`, however, unsing it results in [issues with nearest-projection mapping](https://github.com/precice/precice/issues/603#issuecomment-573139840). -{% endnote %} - ### Debian 11 Bullseye Everything is available from the distribution's repositories: From ff0e6361d13d6ece5df70f275dbe3f0f5161d1fb Mon Sep 17 00:00:00 2001 From: Gerasimos Chourdakis Date: Mon, 4 Jul 2022 23:16:28 +0200 Subject: [PATCH 02/13] System guides: Add hint for Ubuntu 22.04 --- pages/docs/installation/installation-source-dependencies.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pages/docs/installation/installation-source-dependencies.md b/pages/docs/installation/installation-source-dependencies.md index e9cd38f521..5d5460bfd1 100644 --- a/pages/docs/installation/installation-source-dependencies.md +++ b/pages/docs/installation/installation-source-dependencies.md @@ -262,6 +262,10 @@ If you want build preCICE on your own computer and you are using one of the foll Other modern versions of popular Linux distributions are also perfectly compatible, here we just list a few popular options. Since our users have tried preCICE on various distributions, you may as well ask on our [forum](https://precice.discourse.group/) for any questions. +### Ubuntu 22.04 LTS Jammy Jellyfish + +Follow the instructions as for Ubuntu 20.04. + ### Ubuntu 20.04 LTS Focal Fossa With every release, we also ship [binary packages for Ubuntu 20.04](https://github.com/precice/precice/releases). However, if you still want to build from source, everything is available through the distribution's repositories: From 00f9be61235a6a6f6f767dd652e0d9d38f7b9d06 Mon Sep 17 00:00:00 2001 From: Gerasimos Chourdakis Date: Mon, 4 Jul 2022 23:20:41 +0200 Subject: [PATCH 03/13] Update Ubuntu version in CalculiX adapter, add hint --- .../adapters/calculix/adapter-calculix-get-adapter.md | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/pages/docs/adapters/calculix/adapter-calculix-get-adapter.md b/pages/docs/adapters/calculix/adapter-calculix-get-adapter.md index 1ef0eb596c..8593f7ac63 100644 --- a/pages/docs/adapters/calculix/adapter-calculix-get-adapter.md +++ b/pages/docs/adapters/calculix/adapter-calculix-get-adapter.md @@ -13,15 +13,19 @@ There are two ways to get the adapter: (a) get a binary package (Ubuntu-only), o You can download version-specific Ubuntu (Debian) packages from each [adapter release](https://github.com/precice/calculix-adapter/releases/latest). To install, simply open it in your software center. -Alternatively, download & install it from the command line. For Ubuntu 20.04 (focal): +Alternatively, download & install it from the command line. For Ubuntu 22.04 (jammy): ```bash -wget https://github.com/precice/calculix-adapter/releases/download/v{{ site.calculix_adapter_version }}/calculix-precice2_{{ site.calculix_adapter_version }}-1_amd64_focal.deb -sudo apt install ./calculix-precice2_{{ site.calculix_adapter_version }}-1_amd64_focal.deb +wget https://github.com/precice/calculix-adapter/releases/download/v{{ site.calculix_adapter_version }}/calculix-precice2_{{ site.calculix_adapter_version }}-1_amd64_jammy.deb +sudo apt install ./calculix-precice2_{{ site.calculix_adapter_version }}-1_amd64_jammy.deb ``` This requires that also preCICE itself has been installed from a Debian package. +{% tip %} +Replace `jammy` with `focal` to get the package for Ubuntu 20.04. +{% endtip %} + {% note %} We started offering Debian packages for the CalculiX adapter since v2.19.0. Please [give us your feedback](community-channels.html)! {% endnote %} From 3edfdf46705cf621e1d16781259a4ffcd323ceb7 Mon Sep 17 00:00:00 2001 From: Gerasimos Chourdakis Date: Mon, 4 Jul 2022 23:23:38 +0200 Subject: [PATCH 04/13] Installation-packages: Bump Ubuntu version --- pages/docs/installation/installation-packages.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pages/docs/installation/installation-packages.md b/pages/docs/installation/installation-packages.md index 017611bd85..311ab77a7b 100644 --- a/pages/docs/installation/installation-packages.md +++ b/pages/docs/installation/installation-packages.md @@ -12,18 +12,18 @@ This section lists systems and instructions on how to install these packages. You can download version-specific Ubuntu (Debian) packages from each [GitHub release](https://github.com/precice/precice/releases/latest). To install, simply open it in your software center. -Alternatively, download & install it from the command line. For **Ubuntu 20.04 (focal)**: +Alternatively, download & install it from the command line. For **Ubuntu 22.04 (jammy)**: ```bash -wget https://github.com/precice/precice/releases/download/v{{ site.precice_version }}/libprecice2_{{ site.precice_version }}_focal.deb -sudo apt install ./libprecice2_{{ site.precice_version }}_focal.deb +wget https://github.com/precice/precice/releases/download/v{{ site.precice_version }}/libprecice2_{{ site.precice_version }}_jammy.deb +sudo apt install ./libprecice2_{{ site.precice_version }}_jammy.deb ``` We support the latest two Ubuntu LTS versions, as well as the latest normal Ubuntu release. Check the [official release-cyle](https://ubuntu.com/about/release-cycle) for more information and the version code names. -As an example, change `focal` to `hirsute` for 21.04, `groovy` for 20.10, or to `bionic` for 18.04. +As an example, change `jammy` to `focal` for 20.04. -Is a newer preCICE release out and we have not yet updated the above links? Please [edit this page](https://github.com/precice/precice.github.io_future/blob/master/pages/docs/installation/installation-packages.md). +Is a newer preCICE release out and we have not yet updated the above links? Please edit this page. ## Arch Linux / Manjaro From 2c9cd211879f05a4db80a79214133fe7bc615d65 Mon Sep 17 00:00:00 2001 From: Boris Martin <84379125+boris-martin@users.noreply.github.com> Date: Tue, 5 Jul 2022 14:02:30 +0200 Subject: [PATCH 05/13] Update installation instructions on OpenSUSE --- .../docs/installation/installation-source-dependencies.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/pages/docs/installation/installation-source-dependencies.md b/pages/docs/installation/installation-source-dependencies.md index 5d5460bfd1..9a53927fd5 100644 --- a/pages/docs/installation/installation-source-dependencies.md +++ b/pages/docs/installation/installation-source-dependencies.md @@ -416,17 +416,18 @@ This system requires to install some tools in a fixed order. Use `cmake3` instead of `cmake` to configure preCICE! {% endimportant %} -### OpenSUSE Leap 15.2 +### OpenSUSE Leap 15.4 -In OpenSUSE Leap 15.2, things are a bit more complicated (please contribute in this section). Get the basic dependencies: +In OpenSUSE Leap 15.4, things are a bit more complicated (please contribute in this section). Get the basic dependencies: ```bash sudo zypper refresh sudo zypper install gcc-c++ make cmake libxml2-devel \ -libboost_log1_66_0-devel libboost_thread1_66_0-devel libboost_system1_66_0-devel libboost_filesystem1_66_0-devel libboost_program_options1_66_0-devel libboost_test1_66_0-devel \ +libboost_log1_75_0-devel libboost_thread1_75_0-devel libboost_system1_75_0-devel libboost_filesystem1_75_0-devel libboost_program_options1_75_0-devel libboost_test1_75_0-devel \ eigen3-devel python3-devel ``` +Furthermore, Numpy is needed. It can be installed through pip: `pip install numpy`. You may need to set the Eigen location when configuring preCICE: ```bash From 16168be1e9ac97bef3f47dc8a2c26a3c0a09057f Mon Sep 17 00:00:00 2001 From: Boris Martin <84379125+boris-martin@users.noreply.github.com> Date: Tue, 5 Jul 2022 14:16:38 +0200 Subject: [PATCH 06/13] Update installation-source-dependencies.md --- pages/docs/installation/installation-source-dependencies.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/docs/installation/installation-source-dependencies.md b/pages/docs/installation/installation-source-dependencies.md index 9a53927fd5..7c70aa2bea 100644 --- a/pages/docs/installation/installation-source-dependencies.md +++ b/pages/docs/installation/installation-source-dependencies.md @@ -427,7 +427,7 @@ libboost_log1_75_0-devel libboost_thread1_75_0-devel libboost_system1_75_0-devel eigen3-devel python3-devel ``` -Furthermore, Numpy is needed. It can be installed through pip: `pip install numpy`. +Furthermore, Numpy is needed. It can be installed through pip: `pip3 install --user numpy`. You may need to set the Eigen location when configuring preCICE: ```bash From 098b8de9c5639f5aabaa8d7cafcc5f24a6076992 Mon Sep 17 00:00:00 2001 From: Gerasimos Chourdakis Date: Tue, 5 Jul 2022 16:55:39 +0200 Subject: [PATCH 07/13] Update Fedora dependencies guide --- pages/docs/installation/installation-source-dependencies.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pages/docs/installation/installation-source-dependencies.md b/pages/docs/installation/installation-source-dependencies.md index 7c70aa2bea..d88b0693fd 100644 --- a/pages/docs/installation/installation-source-dependencies.md +++ b/pages/docs/installation/installation-source-dependencies.md @@ -317,9 +317,9 @@ apt install build-essential cmake libeigen3-dev libxml2-dev libboost-all-dev pyt If you don't plan to use RBF mappings in large parallel cases you can continue without installing PETSc and build with `-DPRECICE_PETScMapping=OFF`. If you need PETSc, follow the steps in the [PETSc](#petsc) section and you are done. -### Fedora 34 +### Fedora 36 -In Fedora 33 and 34, everything is available through the distribution's repositories: +In Fedora, everything is available through the distribution's repositories: ```bash sudo dnf update @@ -332,6 +332,8 @@ Afterwards, start a new terminal, to make MPI discoverable (read more about [MPI module load mpi/openmpi-x86_64 ``` +(if `module` is not available, you may need to log out and in again) + {% note %} In case you use the docker image of fedora, you need to install the support for environment modules first: `sudo dnf install environment-modules` {% endnote %} From 1cf8977db1372396542d3dcf429f7ca41c07ee36 Mon Sep 17 00:00:00 2001 From: Gerasimos Chourdakis Date: Tue, 9 Aug 2022 09:26:05 +0200 Subject: [PATCH 08/13] Fedora: document hdf5-openmpi-devel --- pages/docs/installation/installation-source-dependencies.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pages/docs/installation/installation-source-dependencies.md b/pages/docs/installation/installation-source-dependencies.md index d88b0693fd..e756cf0ffc 100644 --- a/pages/docs/installation/installation-source-dependencies.md +++ b/pages/docs/installation/installation-source-dependencies.md @@ -323,9 +323,11 @@ In Fedora, everything is available through the distribution's repositories: ```bash sudo dnf update -sudo dnf install gcc-c++ cmake libxml2-devel boost-devel openmpi-devel petsc-openmpi-devel eigen3-devel python3-devel +sudo dnf install gcc-c++ cmake libxml2-devel boost-devel openmpi-devel petsc-openmpi-devel hdf5-openmpi-devel eigen3-devel python3-devel ``` +Note that `hdf5-openmpi-devel` is only needed to detect the PETSc installation ([details](https://github.com/precice/precice.github.io/pull/179#issuecomment-1207865435)). + Afterwards, start a new terminal, to make MPI discoverable (read more about [MPI on Fedora](https://docs.fedoraproject.org/en-US/neurofedora/mpi/)). Before configuring & building preCICE, load MPI using the module: ```bash From 21fa86c9eba8688db565aac5ce0e8d7498930050 Mon Sep 17 00:00:00 2001 From: Gerasimos Chourdakis Date: Tue, 9 Aug 2022 09:28:03 +0200 Subject: [PATCH 09/13] Swap Ubuntu 22.04 and 20.04 --- .../installation/installation-source-dependencies.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pages/docs/installation/installation-source-dependencies.md b/pages/docs/installation/installation-source-dependencies.md index e756cf0ffc..0312ac98f1 100644 --- a/pages/docs/installation/installation-source-dependencies.md +++ b/pages/docs/installation/installation-source-dependencies.md @@ -264,11 +264,7 @@ Other modern versions of popular Linux distributions are also perfectly compatib ### Ubuntu 22.04 LTS Jammy Jellyfish -Follow the instructions as for Ubuntu 20.04. - -### Ubuntu 20.04 LTS Focal Fossa - -With every release, we also ship [binary packages for Ubuntu 20.04](https://github.com/precice/precice/releases). However, if you still want to build from source, everything is available through the distribution's repositories: +With every release, we also ship [binary packages for Ubuntu 22.04](https://github.com/precice/precice/releases). However, if you still want to build from source, everything is available through the distribution's repositories: ```bash sudo apt update && \ @@ -277,6 +273,10 @@ sudo apt install build-essential cmake libeigen3-dev libxml2-dev libboost-all-de The same instructions apply for later Ubuntu releases. +### Ubuntu 20.04 LTS Focal Fossa + +Follow the same instructions as for Ubuntu 22.04. + ### Ubuntu 18.04 Bionic Beaver {% warning %} From 9b22abf1ffd63b6f8e51fe26a37c370db2466728 Mon Sep 17 00:00:00 2001 From: Gerasimos Chourdakis Date: Tue, 9 Aug 2022 09:50:01 +0200 Subject: [PATCH 10/13] Update macOS instructions --- .../installation/installation-source-dependencies.md | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/pages/docs/installation/installation-source-dependencies.md b/pages/docs/installation/installation-source-dependencies.md index 0312ac98f1..9d25f791eb 100644 --- a/pages/docs/installation/installation-source-dependencies.md +++ b/pages/docs/installation/installation-source-dependencies.md @@ -450,17 +450,19 @@ cmake -DPRECICE_MPICommunication=OFF -DPRECICE_PETScMapping=OFF Date: Tue, 9 Aug 2022 10:08:29 +0200 Subject: [PATCH 11/13] Update CentOS guides --- .../docs/installation/installation-source-dependencies.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/pages/docs/installation/installation-source-dependencies.md b/pages/docs/installation/installation-source-dependencies.md index 9d25f791eb..bacf191385 100644 --- a/pages/docs/installation/installation-source-dependencies.md +++ b/pages/docs/installation/installation-source-dependencies.md @@ -344,6 +344,10 @@ If you don't plan to use RBF mappings in large parallel cases you can continue w ### CentOS 8 +{% warning %} +The last release of preCICE to support CentOS 8 was [preCICE v2.3.0](https://github.com/precice/precice/releases/tag/v2.3.0). +{% endwarning %} + (The same instructions apply also to Rocky Linux 8) This system requires to install some tools in a fixed order. @@ -379,6 +383,10 @@ This system requires to install some tools in a fixed order. ### CentOS 7 +{% warning %} +The last release of preCICE to support CentOS 7 was [preCICE v2.3.0](https://github.com/precice/precice/releases/tag/v2.3.0). +{% endwarning %} + This system requires to install some tools in a fixed order. 1. First install the group 'Development Tools'. From 6075dc822402a183bdac7281cbc63b0dca8d498a Mon Sep 17 00:00:00 2001 From: Gerasimos Chourdakis Date: Wed, 10 Aug 2022 20:55:03 +0200 Subject: [PATCH 12/13] Add Rocky Linux 9 --- .../installation-source-dependencies.md | 32 +++++++++++++++++-- 1 file changed, 29 insertions(+), 3 deletions(-) diff --git a/pages/docs/installation/installation-source-dependencies.md b/pages/docs/installation/installation-source-dependencies.md index bacf191385..0f50e46ecb 100644 --- a/pages/docs/installation/installation-source-dependencies.md +++ b/pages/docs/installation/installation-source-dependencies.md @@ -342,6 +342,33 @@ In case you use the docker image of fedora, you need to install the support for If you don't plan to use RBF mappings in large parallel cases you can continue without installing PETSc and build with `-DPRECICE_PETScMapping=OFF`. You may need this with older preCICE and Fedora versions (e.g. preCICE v2.1 on Fedora 32 or earlier, see a [related issue](https://github.com/precice/precice/issues/864). +### Rocky Linux 9 + +Rocky Linux very closely follows the conventions previously set by CentOS. We first need to install common development tools, enable the [CRB repository](https://wiki.rockylinux.org/rocky/repo/) (only for Eigen), install the dependencies, load the MPI module, and continue with building preCICE. + +1. First, install the [Development Tools](https://serverfault.com/questions/814671/centos-how-do-i-check-if-development-tools-is-installed) group (compilers, Git, make, pkg-config, ...): + + ```bash + sudo dnf update + sudo dnf install dnf-plugins-core + sudo dnf groupinstall "Development Tools" + ``` + +2. Then, install the available preCICE dependencies: + + ```bash + sudo dnf install cmake libxml2-devel boost-devel openmpi-devel eigen3-devel python3-devel + ``` + +3. Before configuring & building preCICE, load MPI (you may need to log out and in again, if `module` is not found): + + ```bash + module load mpi/openmpi-x86_64 + ``` + +4. Unfortunately, [PETSc does not seem to be available in this distribution.](https://pkgs.org/search/?q=petsc), so we need to switch that off later when building preCICE. If you don't plan to use RBF mappings in large parallel cases, you can continue without installing PETSc and build preCICE with `-DPRECICE_PETScMapping=OFF`. If you need PETSc, follow the steps in the [PETSc](#petsc) section and you are done. + + ### CentOS 8 {% warning %} @@ -372,14 +399,13 @@ This system requires to install some tools in a fixed order. pip3 install --user numpy ``` -3. Before configuring & building preCICE, load MPI: +3. Before configuring & building preCICE, load MPI (you may need to log out and in again, if `module` is not found): ```bash module load mpi/openmpi-x86_64 ``` -4. Unfortunately, the PETSc package (`petsc-openmpi-devel`) in this distribution is too old. If you don't plan to use RBF mappings in large parallel cases you can continue without installing PETSc and build with `-DPRECICE_PETScMapping=OFF`. - If you need PETSc, follow the steps in the [PETSc](#petsc) section and you are done. +4. Unfortunately, the PETSc package (`petsc-openmpi-devel`) in this distribution is too old. If you don't plan to use RBF mappings in large parallel cases you can continue without installing PETSc, and build preCICE with `-DPRECICE_PETScMapping=OFF`. If you need PETSc, follow the steps in the [PETSc](#petsc) section and you are done. ### CentOS 7 From cd3351ea2c0c240075f42052abc254e30279f728 Mon Sep 17 00:00:00 2001 From: Gerasimos Chourdakis Date: Wed, 10 Aug 2022 20:56:17 +0200 Subject: [PATCH 13/13] Fix Markdown --- pages/docs/installation/installation-source-dependencies.md | 1 - 1 file changed, 1 deletion(-) diff --git a/pages/docs/installation/installation-source-dependencies.md b/pages/docs/installation/installation-source-dependencies.md index 7b22f1fc54..fbc8c1d0ee 100644 --- a/pages/docs/installation/installation-source-dependencies.md +++ b/pages/docs/installation/installation-source-dependencies.md @@ -368,7 +368,6 @@ Rocky Linux very closely follows the conventions previously set by CentOS. We fi 4. Unfortunately, [PETSc does not seem to be available in this distribution.](https://pkgs.org/search/?q=petsc), so we need to switch that off later when building preCICE. If you don't plan to use RBF mappings in large parallel cases, you can continue without installing PETSc and build preCICE with `-DPRECICE_PETScMapping=OFF`. If you need PETSc, follow the steps in the [PETSc](#petsc) section and you are done. - ### CentOS 8 {% warning %}