Define Symbol.__slots__ and Rational.__slots__
[linpy.git] / doc / install.rst
index 35cd056..3a56000 100644 (file)
@@ -1,19 +1,47 @@
-.. _installation:
 
 Installation
-------------
+============
 
 Dependencies
-============
+------------
+
+LinPy requires Python version 3.4 or above to work.
+
+LinPy's one mandatory dependency is isl version 0.12 or 0.13 (it may work with other versions of isl, but this has not been tested).
+isl can be downloaded `here <http://freshmeat.net/projects/isl/>`_ or preferably, using your favorite distribution's package manager.
+For Ubuntu, the command to run is::
+
+    sudo apt-get install libisl-dev
+
+For Arch Linux, run::
 
-Users will first need to install Integer Set Library (isl). The source files of isl are available as a tarball or a git repository. Both
-are available `here`_ .  
+    sudo pacman -S isl
+
+Apart from isl, there are two optional dependencies that will maximize the use of LinPy's functions: `SymPy <http://sympy.org/en/index.html>`_ and `matplotlib <http://matplotlib.org/>`_.
+Please consult the `SymPy download page <http://sympy.org/en/download.html>`_ and `matplotlib installation instructions <http://matplotlib.org/faq/installing_faq.html#how-to-install>`_ to install these libraries.
+
+pip
+---
+
+.. warning::
+
+    The project has not been published in PyPI yet, so this section is not relevant.
+    Instead, see the :ref:`source` section to install LinPy.
+
+LinPy can be installed using pip with the command::
+
+    sudo pip install linpy
+
+.. _source:
 
 Source
-======
+------
+
+Alternatively, LinPy can be installed from the source.
+First, clone the public git repository::
 
-Git
-===
+    git clone https://scm.cri.ensmp.fr/git/linpy.git
 
+and build and install as usual with::
 
-.. _here: http://freshmeat.net/projects/isl/
+    sudo python3 setup.py install