If compiling from a release source tarball (recommended), you need a recent version of the GCC compiler (see below, only GCC is supported) and other essential tools for compilation (GNU make, ar, etc). Additional requirements are needed to compile the SWIG script bindings. See the SWIG installation guide.
If compiling from the github development tree, additionally you need autotools (autoconf, automake and libtools), yaggo.
From the tarball:
sudo apt install build-essential
# For the bindings to scripting, additionally install
sudo apt install swig python3-dev ruby-dev libperl-dev
From the git tree:
sudo apt instaoo build-essential git yaggo autoconf automake libtool gettext
# For the bindings to scripting, additionally install
sudo apt install swig python3-dev ruby-dev libperl-dev
MUMmer must be compiled with GCC, not Clang (and not the Apple provided gcc
which is really clang
).
Install with Brew:
brew install autoconf automake libtool md5sha1sum
gem install yaggo
MUMmer must be compiled with GCC, not Clang. Install with Brew:
brew install autoconf automake libtool md5sha1sum bash
gem install yaggo
If compiling from the release tarball (recommended), then the first command autoreconf -fi
is not necessary.
autoreconf -fi # Optional, on if compiling from git tree
./configure --prefix=/path/to/installation
make
make check # Optional
make install
If --prefix
is omitted, the software is installed in /usr/local
.
One may need sudo make install
if installing in a system location.
Compile with gcc-14
.
autoreconf -fi # Optional, on if compiling from git tree
./configure --prefix=/path/to/installation CC=gcc-14 CXX=g++-14
make
make check # Optional
make install
Compile with gcc14
.
autoreconf -fi # Optional, on if compiling from git tree
./configure --prefix=/path/to/installation MAKE=gmake CC=gcc14 CXX=g++14 LDFLAGS=-Wl,-rpath=/usr/local/lib/gcc14
gmake
gmake check # Optional
gmake install
The MUMmer4.x package requires the following to run successfully. In the absence of one or more of these utilities, certain MUMmer programs may fail to run correctly. In parenthesis the minimum version. These utilities must be accessible via the system path:
- perl5 (5.6.0)
- sh
- sed
- awk
To use the visualization tools included with MUMmer, it may be necessary to install the following utilities:
- fig2dev (3.2.3)
- gnuplot (4.0)
- xfig (3.2)
In the "MUMmer4.x" base directory type:
make uninstall
To build a Docker container image containing mummer and all dependencies, install Docker for Windows, Mac, or Linux; clone the mummer git repo; and issue the following command in the top-level directory of the mummer git working tree:
docker build -t mummer -f Dockerfiles/Dockerfile-debian .
To execute individual mummer commands (e.g., nucmer
) within a container:
docker run --rm -v $PWD:/mnt -w /mnt mummer nucmer -p <prefix> ref.fa qry.fa
To execute an interactive shell within a container (from which mummer commands can be executed):
docker run -it --rm -v $PWD:/mnt -w /mnt mummer
To build an Apptainer container, from the git tree run:
apptainer build mummer.sif Apptainerfiles/mummer-alpine.def # or Apptainerfiles/mummer-debian.def
To build another branch than HEAD (for example develop
), run:
apptainer build --build-arg treeish=develop mummer.sif Apptainerfiles/mummer-alpine.def
To execute individual MUMmer commands (e.g., nucmer
):
apptainer run mummer.sif nucmer -p <prefix> ref.fa qry.fa
Please address questions and bug reports via the github issue tracker.