Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Add eigen dependency to dockerfiles
authorBruno Donassolo <bruno.donassolo@inria.fr>
Mon, 7 Mar 2022 10:46:58 +0000 (11:46 +0100)
committerBruno Donassolo <bruno.donassolo@inria.fr>
Mon, 7 Mar 2022 10:46:58 +0000 (11:46 +0100)
Improve ChangeLog

ChangeLog
docs/source/Installing_SimGrid.rst
docs/source/tuto_disk/Dockerfile
docs/source/tuto_network_calibration/Dockerfile
tools/docker/Dockerfile.build-deps
tools/docker/Dockerfile.stable
tools/docker/Dockerfile.tuto-mc
tools/docker/Dockerfile.tuto-s4u
tools/docker/Dockerfile.tuto-smpi
tools/docker/Dockerfile.unstable

index ebf5686..baaf8e4 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -48,6 +48,10 @@ Models:
         selective-update optimization. Only invalidates and recomputes modified
         parts of inequations system. May speed up simulation if sparse resource
         utilization (default: false).
+   - ATTENTION: this model requires Eigen3 library. If you install SimGrid
+   from source, please see the "Installing from source" section:
+   https://simgrid.org/doc/latest/Installing_SimGrid.html#installing-from-the-source.
+   No action is required if you use pre-compiled packages.
 
 XBT:
  - Drop xbt_dynar_shrink().
index 1089cbd..1cbd7fb 100644 (file)
@@ -122,9 +122,11 @@ cmake (v3.5).
   configuration options (e.g., if your Python installation is not standard).
 boost (at least v1.48, v1.59 recommended)
   - On Debian / Ubuntu: ``apt install libboost-dev libboost-context-dev``
+  - On CentOS / Fedora: ``yum install boost-devel``
   - On macOS with homebrew: ``brew install boost``
 Eigen3
   - On Debian / Ubuntu: ``apt install libeigen3-dev``
+  - On CentOS / Fedora: ``yum install eigen3-devel``
   - On macOS with homebrew: ``brew install eigen``
 Java (optional):
   - Debian / Ubuntu: ``apt install default-jdk libgcj18-dev`` (or
index 468451b..dbf2671 100644 (file)
@@ -28,6 +28,7 @@ RUN printf '%s\n' \
     gfortran \
     libboost-dev \
     libboost-all-dev \
+    libeigen3-dev \
     cmake \
     dpkg-dev \
 # misc tools
index ec26042..3bf0cb6 100644 (file)
@@ -23,6 +23,7 @@ RUN printf '%s\n' \
     gfortran \
     libboost-dev \
     libboost-all-dev \
+    libeigen3-dev \
     cmake \
     dpkg-dev \
 # misc tools
index 53f36c0..0979cc7 100644 (file)
@@ -12,6 +12,7 @@ RUN apt-get --allow-releaseinfo-change update && \
        git \
        valgrind \
        libboost-dev libboost-all-dev \
+       libeigen3-dev \
        cmake \
        python3-pip \
        doxygen fig2dev \
index 4906400..1f2d1c4 100644 (file)
@@ -12,11 +12,11 @@ RUN echo "DOWNLOAD_URL: ${DLURL}" && \
     wget https://framagit.org/${DLURL} && \
     tar xf simgrid-* && rm simgrid-*tar.gz && \
     cd simgrid-* && \
-    apt install -y g++ gcc git valgrind gfortran libboost-dev libboost-all-dev cmake dpkg-dev python3-dev pybind11-dev && \
+    apt install -y g++ gcc git valgrind gfortran libboost-dev libboost-all-dev libeigen3-dev cmake dpkg-dev python3-dev pybind11-dev && \
     cmake -DCMAKE_INSTALL_PREFIX=/usr/ -Denable_documentation=OFF -Denable_smpi=ON -Denable_compile_optimizations=ON . && \
     make -j4 && \
     mkdir debian/ && touch debian/control && dpkg-shlibdeps --ignore-missing-info lib/*.so -llib/ -O/tmp/deps && \
     make install && make clean && \
-    apt remove -y  g++ gcc git valgrind default-jdk gfortran libboost-dev libboost-all-dev cmake dpkg-dev wget python3-dev pybind11-dev && \
+    apt remove -y  g++ gcc git valgrind default-jdk gfortran libboost-dev libboost-all-dev libeigen3-dev cmake dpkg-dev wget python3-dev pybind11-dev && \
     apt install `sed -e 's/shlibs:Depends=//' -e 's/([^)]*)//g' -e 's/,//g' /tmp/deps` && \
     apt autoremove -y && apt autoclean && apt clean
index 55cbbf8..b1f64bb 100644 (file)
@@ -13,7 +13,7 @@ RUN apt update && apt -y upgrade
 # - Get the tutorial files (with an empty makefile advising to run cmake before make, just in case)
 # - Remove everything that was installed, and re-install what's needed by the SimGrid libraries before the Gran Final Cleanup
 # - Keep g++ gcc gfortran as any MC user will use (some of) them
-RUN apt install -y g++ gcc git valgrind gfortran libboost-dev libboost-stacktrace-dev cmake dpkg-dev libunwind-dev libdw-dev libelf-dev libevent-dev python3-dev && \
+RUN apt install -y g++ gcc git valgrind gfortran libboost-dev libeigen3-dev libboost-stacktrace-dev cmake dpkg-dev libunwind-dev libdw-dev libelf-dev libevent-dev python3-dev && \
     mkdir /source/ && cd /source && git clone --depth=1 https://framagit.org/simgrid/simgrid.git simgrid.git && \
     cd simgrid.git && \
     cmake -DCMAKE_INSTALL_PREFIX=/usr/ -Denable_model-checking=ON -Denable_documentation=OFF -Denable_java=OFF -Denable_smpi=ON -Denable_compile_optimizations=ON . && \
index 0c853db..bb4f50f 100644 (file)
@@ -5,7 +5,7 @@ RUN apt update && apt -y upgrade
 
 # - Clone simgrid-template-s4u, as it is needed by the tutorial
 # - Add an empty makefile advising to run cmake before make, just in case
-RUN apt install -y python-is-python3 pajeng r-base r-cran-tidyverse r-cran-devtools cmake g++ git libboost-dev flex bison libfmt-dev && \
+RUN apt install -y python-is-python3 pajeng r-base r-cran-tidyverse r-cran-devtools cmake g++ git libboost-dev libeigen3-dev flex bison libfmt-dev && \
     cd /source && \
     git clone --depth=1 https://framagit.org/simgrid/simgrid-template-s4u.git simgrid-template-s4u.git && \
     printf "master-workers ping-pong:\n\t@echo \"Please run the following command before make:\";echo \"    cmake .\"; exit 1" > Makefile && \
index c20f19c..85cddcb 100644 (file)
@@ -6,7 +6,7 @@ ADD "http://deb.debian.org/debian/dists/testing/Release" skipcache
 RUN apt update && apt -y upgrade
 
 # - Clone simgrid-template-smpi, as it is needed by the tutorial
-RUN apt install -y python3 pajeng libssl-dev r-base r-cran-devtools r-cran-tidyverse build-essential g++ gfortran git libboost-dev cmake flex bison libfmt-dev && \
+RUN apt install -y python3 pajeng libssl-dev r-base r-cran-devtools r-cran-tidyverse build-essential g++ gfortran git libboost-dev libeigen3-dev cmake flex bison libfmt-dev && \
     cd /source && \
     git clone --depth=1 https://framagit.org/simgrid/simgrid-template-smpi.git simgrid-template-smpi.git && \
     apt autoremove -y && apt clean && apt autoclean
index adf04dd..2198d18 100644 (file)
@@ -5,13 +5,13 @@ FROM debian:testing
 # - Compile and install SimGrid itself. Clean the tree.
 # - Remove everything that was installed, and re-install what's needed by the SimGrid libraries before the Gran Final Cleanup
 RUN apt-get --allow-releaseinfo-change update && apt -y upgrade && \
-    apt install -y g++ gcc git valgrind gfortran libboost-dev libboost-all-dev cmake dpkg-dev python3-dev pybind11-dev && \
+    apt install -y g++ gcc git valgrind gfortran libboost-dev libboost-all-dev libeigen3-dev cmake dpkg-dev python3-dev pybind11-dev && \
     mkdir /source/ && cd /source && git clone --depth=1 https://framagit.org/simgrid/simgrid.git simgrid.git && \
     cd simgrid.git && \
     cmake -DCMAKE_INSTALL_PREFIX=/usr/ -Denable_documentation=OFF -Denable_smpi=ON -Denable_compile_optimizations=ON . && \
     make -j4 install && \
     mkdir debian/ && touch debian/control && dpkg-shlibdeps --ignore-missing-info lib/*.so -llib/ -O/tmp/deps && \
     git reset --hard master && git clean -dfx && \
-    apt remove -y  g++ gcc git valgrind default-jdk gfortran libboost-dev libboost-all-dev cmake dpkg-dev python3-dev pybind11-dev && \
+    apt remove -y  g++ gcc git valgrind default-jdk gfortran libboost-dev libboost-all-dev libeigen3-dev cmake dpkg-dev python3-dev pybind11-dev && \
     apt install `sed -e 's/shlibs:Depends=//' -e 's/([^)]*)//g' -e 's/,//g' /tmp/deps` && \
     apt autoremove -y && apt autoclean && apt clean