Joinx is a lightweight tool for performing operations (e.g., intersection, difference, …) on genomic data contained in vcf and .bed files. It also provides some limited analysis functions (concordance reports). An important assumption that joinx makes is that the input data is always sorted. This allows it to compute its results in an efficient manner.
- Clone the git repository
- Initialize submodules:
git submodule update --init
Building requires:
- gcc 4.4+ or clang 3.2+
- cmake 2.8+
Integration tests require:
- Python
- Valgrind (optional, but recommended)
To install the packages required to build on Ubuntu, try:
sudo apt-get install cmake build-essential
Note: if using clang, export the environment variables CC=clang, CXX=clang++.
Joinx does not support in source builds. Create a new build directory, enter it, and run:
cmake /path/to/joinx/repo [opts]
- Some useful options to cmake are:
- -DBOOST_BUILD_OPTS=“-j 8” to build boost with 8 threads (or to pass other options to b2)
- -DCMAKE_INSTALL_PREFIX=/path change the installation location (default: /usr)
- Some useful options to cmake are:
make deps
make
ctest
(to run unit tests)make install
Running ctest with run both unit and integration tests. you can run one or the other with
ctest -L <unit|integration>