summaryrefslogtreecommitdiff
path: root/src/python/doc/installation.rst
diff options
context:
space:
mode:
Diffstat (limited to 'src/python/doc/installation.rst')
-rw-r--r--src/python/doc/installation.rst64
1 files changed, 57 insertions, 7 deletions
diff --git a/src/python/doc/installation.rst b/src/python/doc/installation.rst
index 77d9e8b3..40f3f44b 100644
--- a/src/python/doc/installation.rst
+++ b/src/python/doc/installation.rst
@@ -8,7 +8,7 @@ Installation
Conda
*****
The easiest way to install the Python version of GUDHI is using
-`conda <https://gudhi.inria.fr/licensing/>`_.
+`conda <https://gudhi.inria.fr/conda/>`_.
Compiling
*********
@@ -40,6 +40,20 @@ To build the GUDHI Python module, run the following commands in a terminal:
cd python
make
+.. note::
+
+ :code:`make python` (or :code:`make` in python directory) is only a
+ `CMake custom targets <https://cmake.org/cmake/help/latest/command/add_custom_target.html>`_
+ to shortcut :code:`python setup.py build_ext --inplace` command.
+ No specific other options (:code:`-j8` for parallel, or even :code:`make clean`, ...) are
+ available.
+ But one can use :code:`python setup.py ...` specific options in the python directory:
+
+.. code-block:: bash
+
+ python setup.py clean --all # Clean former compilation
+ python setup.py build_ext -j 8 --inplace # Build in parallel
+
GUDHI Python module installation
================================
@@ -59,19 +73,40 @@ Or install it definitely in your Python packages folder:
# May require sudo or administrator privileges
make install
+.. note::
+
+ :code:`make install` is only a
+ `CMake custom targets <https://cmake.org/cmake/help/latest/command/add_custom_target.html>`_
+ to shortcut :code:`python setup.py install` command.
+ It does not take into account :code:`CMAKE_INSTALL_PREFIX`.
+ But one can use :code:`python setup.py install ...` specific options in the python directory:
+
+.. code-block:: bash
+
+ python setup.py install --prefix /home/gudhi # Install in /home/gudhi directory
Test suites
===========
-To test your build, `py.test <http://doc.pytest.org>`_ is optional. Run the
-following command in a terminal:
+To test your build, `py.test <http://doc.pytest.org>`_ is required. Run the
+following `Ctest <https://cmake.org/cmake/help/latest/manual/ctest.1.html>`_
+(CMake test driver program) command in a terminal:
.. code-block:: bash
cd /path-to-gudhi/build/python
# For windows, you have to set PYTHONPATH environment variable
export PYTHONPATH='$PYTHONPATH:/path-to-gudhi/build/python'
- make test
+ ctest
+
+.. note::
+
+ One can use :code:`ctest` specific options in the python directory:
+
+.. code-block:: bash
+
+ # Launch tests in parallel on 8 cores and set failing tests in verbose mode
+ ctest -j 8 --output-on-failure
Debugging issues
================
@@ -215,12 +250,27 @@ The following examples require the `Matplotlib <http://matplotlib.org>`_:
* :download:`euclidean_strong_witness_complex_diagram_persistence_from_off_file_example.py <../example/euclidean_strong_witness_complex_diagram_persistence_from_off_file_example.py>`
* :download:`euclidean_witness_complex_diagram_persistence_from_off_file_example.py <../example/euclidean_witness_complex_diagram_persistence_from_off_file_example.py>`
+Python Optimal Transport
+========================
+
+The :doc:`Wasserstein distance </wasserstein_distance_user>`
+module requires `POT <https://pot.readthedocs.io/>`_, a library that provides
+several solvers for optimization problems related to Optimal Transport.
+
+Scikit-learn
+============
+
+The :doc:`persistence representations </representations>` module require
+`scikit-learn <https://scikit-learn.org/>`_, a Python-based ecosystem of
+open-source software for machine learning.
+
SciPy
=====
-The :doc:`persistence graphical tools </persistence_graphical_tools_user>`
-module requires `SciPy <http://scipy.org>`_, a Python-based ecosystem of
-open-source software for mathematics, science, and engineering.
+The :doc:`persistence graphical tools </persistence_graphical_tools_user>` and
+:doc:`Wasserstein distance </wasserstein_distance_user>` modules require `SciPy
+<http://scipy.org>`_, a Python-based ecosystem of open-source software for
+mathematics, science, and engineering.
Threading Building Blocks
=========================