-.. 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
Nightly built Java Package
^^^^^^^^^^^^^^^^^^^^^^^^^^
-For non-Windows systems (Linux, macOS, or FreeBSD), head to `Jenkins <https://ci.inria.fr/simgrid/job/SimGrid>`_.
-In the build history, pick the last green (or at least yellow) build that is not blinking (i.e., not currently under
-build). In the list, pick a system that is close to yours, and click on the ball in the Debug row. The build artifact
-will appear at the top of the resulting page.
-
-For Windows, head to `AppVeyor <https://ci.appveyor.com/project/simgrid/simgrid>`_.
-Click on the artifact link on the right, and grab your file. If the latest build failed, there will be no artifact. Then
-you will need to first click on "History" at the top and look for the last successful build.
+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.
+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 "$@"
-