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:
- sphinx to build the documentation
- pytest for testing
- pytest-remotedata for testing with remote datasets
The preferred methods of installation are pip or conda, using prebuilt packages.
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 :ref:`deploy_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 :ref:`deploy_venv` for details.
Warning
Do not use sudo pip
unless you really really know what you are doing.
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 :ref:`deploy_conda` for details.
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.
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
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.
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