Installation

Requirements

Python >= 3.6 is required. Additionally the following packages are required in order to work properly:

Cython is required if you build the code from the development repository:

The following packages are optional, for building documentation and testing:

Installing numina

The preferred methods of installation are pip or conda, using prebuilt packages.

Using pip

Run:

pip install numina

Pip will download all the required dependencies and a precompiled versión of numina (if it exists for your platform) from PyPI.

Note

If possible, pip will install a precompiled version of numina in wheel format. If such a version does not exist, pip will download and compile the source code. Numina has some portions of C and C++ code. You will need a C/C++ compiler such as gcc or clang (see Building from source below)

Pip can install packages in different locations. You can use the --user option to install packages in your home directory.

Our recomended option is to perform isolated installations using virtualenv or venv. See Numina Deployment with Virtualenv for details.

Warning

Do not use sudo pip unless you really really know what you are doing.

Using conda

Numina packages for conda are provided in the conda-forge channel. To install the latest version of numina run:

conda update -c conda-forge numina

See Numina Deployment with Conda for details.

Building from source

You may end up building from source if there is not a stable precompiled version of numina for your platform or if you are doing development based on numina.

Prerequisites

You will need a compiler suite and the development headers of Python and Numpy.

If you are building the development version of numina, you will also need Cython to translate Cython code into C/C++. If your source code is from a release, the translated files are included, and hence do not require Cython.

The released sources of numina can be downloaded from PyPI. If you require instead the development version, it can can be checked out with:

git clone https://github.com/guaix-ucm/numina.git

Building and installing

To build numina, run:

python setup.py build

Note

In macOS Mojave, the compilation will fail unless the following environment variable is defined:

export MACOSX_DEPLOYMENT_TARGET=10.9

To install numina, run:

python setup.py install

If you get an error about insufficient permissions to install, you are probably trying to access directories owned by root. Try instead:

python setup.py install --user

or perform the installation inside an isolated environment, such as conda or venv.

Warning

Do not sudo python setup.py install unless you really really know what you are doing.

Building the documentation

The Numina documentation is base on sphinx. With the package installed, the html documentation can be built from the doc directory:

$ cd doc
$ make html

The documentation will be copied to a directory under build/sphinx.

The documentation can be built in different formats. The complete list will appear if you type make