X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/53e57cd53df3446341f3ba5767b3a8b972268e8f..00487352c466435e1418fdb2123641aece28abf3:/docs/source/Installing_SimGrid.rst diff --git a/docs/source/Installing_SimGrid.rst b/docs/source/Installing_SimGrid.rst index 696dae7ede..1089cbd0e2 100644 --- a/docs/source/Installing_SimGrid.rst +++ b/docs/source/Installing_SimGrid.rst @@ -1,4 +1,4 @@ -.. Copyright 2005-2021 +.. Copyright 2005-2022 .. _install: @@ -25,9 +25,26 @@ following lines, or several lines if you need several languages. $ apt install simgrid-java # if you want to develop in Java $ apt install python3-simgrid # if you want to develop in Python +If you use the Nix_ package manager, the latest SimGrid release is packaged as ``simgrid`` in Nixpkgs_. +Previous SimGrid versions are maintained in `NUR-Kapack`_ and are available +pre-compiled in release and debug modes on the `capack cachix binary cache`_ +— refer to `NUR-Kapack's documentation`_ for usage instructions. + +If you use a pacman-based system (*e.g.*, Arch Linux and derived distributions), +the latest SimGrid is available in the `simgrid AUR package`_ +— refer to `AUR official documentation`_ for installation instructions. + If you build pre-compiled packages for other distributions, drop us an email. +.. _Nix: https://nixos.org/ +.. _Nixpkgs: https://github.com/NixOS/nixpkgs +.. _NUR-Kapack: https://github.com/oar-team/nur-kapack +.. _capack cachix binary cache: https://app.cachix.org/cache/capack +.. _NUR-Kapack's documentation: https://github.com/oar-team/nur-kapack +.. _simgrid AUR package: https://aur.archlinux.org/packages/simgrid/ +.. _AUR official documentation: https://wiki.archlinux.org/title/Arch_User_Repository + .. _install_java_precompiled: Stable Java Package @@ -42,7 +59,7 @@ Nightly built Java Package ^^^^^^^^^^^^^^^^^^^^^^^^^^ Head to the corresponding `GitHub Action `_ -and pick the last green build. At the bottom of the build page, click on the ``jar-final`` artefact. +and pick the last green build. At the bottom of the build page, click on the ``jar-final`` artefact. Open this zip file to find the jar you need. This jar can be used under Linux, Mac OSX or Windows, as you wish. Binary Java Troubleshooting @@ -58,6 +75,8 @@ Library not found: boost-context You should obviously install the ``boost-context`` library on your machine, for example with ``apt``. +.. _deprecation_policy: + Version numbering and deprecation --------------------------------- @@ -104,20 +123,13 @@ cmake (v3.5). boost (at least v1.48, v1.59 recommended) - On Debian / Ubuntu: ``apt install libboost-dev libboost-context-dev`` - On macOS with homebrew: ``brew install boost`` +Eigen3 + - On Debian / Ubuntu: ``apt install libeigen3-dev`` + - On macOS with homebrew: ``brew install eigen`` Java (optional): - Debian / Ubuntu: ``apt install default-jdk libgcj18-dev`` (or any version of libgcj) - macOS or Windows: Grab a `full JDK `_ -Lua (optional -- must be v5.3) - - SimGrid won't work with any other version of Lua. - - Debian / Ubuntu: ``apt install liblua5.3-dev lua5.3`` - - Windows: ``choco install lua53`` - - From the source - - You need to patch the sources to build dynamic libraries. First `download lua 5.3 `_ - - Open the archive: ``tar xvfz lua-5.3.*.tar.gz`` - - Enter the directory: ``cd lua-5.3*`` - - Patch the sources: ``patch -p1 < /path/to/simgrid/...../tools/lualib.patch`` - - Build and install lua: ``make linux && sudo make install`` For platform-specific details, please see below. @@ -148,7 +160,7 @@ dependencies. $ make install .. _install_src_config: - + Build Configuration ^^^^^^^^^^^^^^^^^^^ @@ -167,7 +179,7 @@ cmake itself. files, such as ``CMakeCache.txt``. Since Cmake also generates some files in the tree, you may need to wipe out your complete tree and start with a fresh one when you install new dependencies. - + Another (better) solution is to :ref:`build out of the source tree `. @@ -242,13 +254,6 @@ enable_java (on/OFF) Generates the java bindings of SimGrid. You must also enable MSG for this to work. -enable_jedule (on/OFF) - Produces execution traces from SimDag simulations, which can then be visualized with the - Jedule external tool. - -enable_lua (on/OFF) - Generate the lua bindings to the SimGrid internals (requires lua-5.3). - enable_lib_in_jar (ON/off) Embeds the native java bindings into the produced jar file. @@ -278,7 +283,7 @@ enable_ns3 (on/OFF) enable_smpi (ON/off) Allows one to run MPI code on top of SimGrid. -enable_smpi_ISP_testsuite (on/OFF) +enable_smpi_MBI_testsuite (on/OFF) Adds many extra tests for the model checker module. enable_smpi_MPICH3_testsuite (on/OFF) @@ -288,6 +293,14 @@ minimal-bindings (on/OFF) Take as few optional dependencies as possible, to get minimal library bindings in Java and Python. +NS3_HINT (empty by default) + Alternative path into which ns-3 should be searched for. + +SIMGRID_PYTHON_LIBDIR (auto-detected) + Where to install the Python module library. By default, it is set to the cmake Python3_SITEARCH variable if installing to /usr, + and a modified version of that variable if installing to another path. Just force another value if the auto-detected default + does not fit your setup. + SMPI_C_FLAGS, SMPI_CXX_FLAGS, SMPI_Fortran_FLAGS (string) Default compiler options to use in smpicc, smpicxx, or smpiff. This can be useful to set options like "-m32" or "-m64". @@ -433,15 +446,15 @@ Python-specific instructions ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Once you have the Python development headers installed as well as a -recent version of the `pybind11 ` +recent version of the `pybind11 ` module (version at least 2.4), recompiling the Python bindings from -the source should be as easy as: +the source should be as easy as: .. code-block:: console # cd simgrid-source-tree $ python setup.py build install - + Starting with SimGrid 3.13, it should even be possible to install simgrid without downloading the source with pip: @@ -514,4 +527,3 @@ If needed, implement ``i686-linux-gnu-gfortran`` as a script: #!/usr/bin/env sh exec gfortran -m32 "$@" -