-.. Copyright 2005-2021
+.. Copyright 2005-2022
.. _install:
$ 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
^^^^^^^^^^^^^^^^^^^^^^^^^^
Head to the corresponding `GitHub Action <https://github.com/simgrid/simgrid/actions/workflows/jarfile.yml>`_
-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
You should obviously install the ``boost-context`` library on your
machine, for example with ``apt``.
+.. _deprecation_policy:
+
Version numbering and deprecation
---------------------------------
- Debian / Ubuntu: ``apt install default-jdk libgcj18-dev`` (or
any version of libgcj)
- macOS or Windows: Grab a `full JDK <http://www.oracle.com/technetwork/java/javase/downloads>`_
-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 <http://www.lua.org/download.html>`_
- - 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.
$ make install
.. _install_src_config:
-
+
Build Configuration
^^^^^^^^^^^^^^^^^^^
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
<install_cmake_outsrc>`.
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.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Once you have the Python development headers installed as well as a
-recent version of the `pybind11 <https://pybind11.readthedocs.io/en/stable/>`
+recent version of the `pybind11 <https://pybind11.readthedocs.io/en/stable/>`
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:
#!/usr/bin/env sh
exec gfortran -m32 "$@"
-