Skip to content

Latest commit

 

History

History
53 lines (36 loc) · 1.86 KB

README.rst

File metadata and controls

53 lines (36 loc) · 1.86 KB
https://travis-ci.org/camillescott/goetia.svg?branch=master https://img.shields.io/badge/install%20with-bioconda-brightgreen.svg?style=flat

docs/img/goetia_logo_v2.png

goetia is a c++ library and software package for streaming analysis for de Bruijn Graphs, de Bruijn graph compaction, and genome sketching. The c++ library is fully available through Python via bindings generated by cppyy. The primary goals of goetia and its algorithms are:

  • Analyse data completely on-line with streaming methods,
  • Use as little of the data as possible.

Installation

Conda

The primary supported platform is through conda. Within a conda environment, install with:

conda install goetia

This will install the goetia python package, install the libgoetia shared library and its headers into $CONDA_PREFIX.

Building from Source

To build and install from source, first clone the repo:

git clone https://github.com/camillescott/goetia && cd goetia

Then create a conda environment:

conda create -y -n goetia -c conda-forge python=3 cppyy cmake cxx-compiler c-compiler clangdev libcxx libstdcxx-ng libgcc-ng pytest numpy scipy openmp python-clang screed blessings pytest-benchmark pyfiglet py-cpuinfo sourmash curio
conda activate goetia

Then build and install with cmake:

mkdir build; cd build
cmake ..
make # optionally use -j N for faster/parallel build
make install