DNMTools is a set of tools for analyzing DNA methylation data from high-throughput sequencing experiments, especially whole genome bisulfite sequencing (WGBS), but also reduced representation bisulfite sequencing (RRBS). These tools focus on overcoming the computing challenges imposed by the scale of genome-wide DNA methylation data, which is usually the early parts of data analysis.
The documentation for DNMTools can be found here. But if you want to install from source and you are reading this on GitHub or in a source tree you unpacked, then keep reading. And if you are in a terminal, sorry for all the formatting.
- A recent compiler: most users will be building and installing this software with GCC. We require a compiler that fully supports C++11, so we recommend using at least GCC 5.8. There are still many systems that install a very old version of GCC by default, so if you have problems with building this software, that might be the first thing to check.
- The GNU Scientific Library: this has always been required. It can be
installed using
apt
on Linux (Ubuntu, Debian), usingbrew
on macOS, or from source available here. - The Zlib compression library. Most likely you already have this
installed on your system. If not, it can be installed using
apt
on Linux (Ubuntu, Debian) through the packagezlib1g-dev
. On macOS, Zlib can be installed withbrew
. - The HTSlib library, which can be installed through
brew
on macOS, throughapt
on Linux (Ubuntu, Debian), or from source downloadable here.
- Download dnmtools-1.1.0.tar.gz.
- Unpack the archive:
$ tar -zxvf dnmtools-1.1.0.tar.gz
- Move into the dnmtools directory and create a build directory:
$ cd dnmtools-1.1.0
$ mkdir build && cd build
- Run the configuration script:
$ ../configure
If you do not want to install DNMTools system-wide, or if you do not have admin privileges, specify a prefix directory:
$ ../configure --prefix=/some/reasonable/place
If you installed HTSlib yourself in some non-standard directory, you must specify the location like this:
$ ../configure CPPFLAGS='-I /path/to/htslib/headers' \
LDFLAGS='-L/path/to/htslib/lib'
Depending on how you obtained HTSlib, the headers may not be in a directory at the same depth as the library file.
If you are still in the build
directory, run make
to compile the
tools, and then make install
to install them:
$ make
$ make install
If your HTSlib (or some other library) is not installed system-wide, then you might need to udpate your library path:
$ export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/path/to/htslib/lib
To test if everything was successful, simply run dnmtools
without
any arguments and you should see the list of available commands:
$ dnmtools
Not recommended, but if you want to do it this way, we assume you know
what you are doing. We strongly recommend using DNMTools through the
latest stable release under the releases section on GitHub. Developers
who wish to work on the latest commits, which are unstable, can
compile the source using a Makefile
left in the root of the source
tree. If HTSLib and other libraries are available system-wide,
compile by running:
$ make
Read the documentation for usage of individual tools within DNMTools.
Andrew D. Smith [email protected]
Guilherme de Sena Brandine [email protected]
Copyright (C) 2022 Andrew D. Smith and Guilherme de Sena Brandine
Authors of DNMTools: Andrew D. Smith and Guilherme de Sena Brandine
Essential contributors: Ben Decato, Meng Zhou, Liz Ji, Terence Li, Jenny Qu, Qiang Song and Fang Fang
This is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.