.. _install:
Installing ProPhyle
===================
ProPhyle is written in Python, C and C++. It is distributed as a Python package
and all C/C++ programs are compiled upon the first execution
of the main program. ProPhyle requires a Unix operating system and the following dependencies:
* Python 3.3+ with the `ETE3 library `_
* GCC 4.8+
* ZLib
There are multiple ways of installation:
.. contents::
:depth: 1
:local:
:backlinks: none
Installing ProPhyle using Bioconda
----------------------------------
To set-up Bioconda, install
`Miniconda `_
or another Conda distribution, and
add `Bioconda channels `_
.. code-block:: bash
conda config --add channels defaults
conda config --add channels conda-forge
conda config --add channels bioconda
You may either create a separate Conda environment
(which is the recommended approach)
.. code-block:: bash
conda create -n prophyle prophyle
source activate prophyle
or install ProPhyle directly to your main environment
.. code-block:: bash
conda install prophyle
Installing ProPhyle using PIP
-----------------------------
There are three options of installing ProPhyle using PIP.
1) From PyPI
.. code-block:: bash
pip install -U prophyle
2) From Git
.. code-block:: bash
pip install -U git+https://github.com/prophyle/prophyle
3) From PyPI to the current directory
.. code-block:: bash
pip install --user prophyle
export PYTHONUSERBASE=`pwd`
export PATH=$PATH:`pwd`/bin
Running ProPhyle directly from the repository
---------------------------------------------
It also is possible to run ProPhyle directly from the repository, by calling
the main script
.. code-block:: bash
prophyle/prophyle/prophyle.py
or its alias
.. code-block:: bash
prophyle/prophyle/prophyle
ProPhyle will then automatically adjust all paths of the auxiliary programs.
Note that ProPhyle uses submodules, therefore the repository needs to
be clonned with the `--recursive` option
.. code-block:: bash
git clone --recursive http://github.com/prophyle/prophyle
Adjusting the PATH variable
~~~~~~~~~~~~~~~~~~~~~~~~~~~
The ProPhyle path can be prepended to the `$PATH` variable so that ProPhyle
can be executed in the same way as if it was installed using PIP
.. code-block:: bash
export PATH=$(pwd)/prophyle/prophyle:$PATH
Installing dependencies
~~~~~~~~~~~~~~~~~~~~~~~
When run from the repository,
some of the ProPhyle dependencies, listed in `requirements.txt`, might
be missing in the system.
It is possible to install them either using BioConda
.. code-block:: bash
cat prophyle/requirements.txt | perl -pe 's/==.*//g' | xargs conda install
or using PIP
.. code-block:: bash
cat prophyle/requirements.txt | xargs pip install