Mercury packages for .deb based systems

Please let us know if there are problems.

What's supported?

Currently packages for Mercury 14.01.1 on Debian jessie (oldstable) and stretch (stable) on amd64 and i386, and Mercury ROTD 2018-11-14 on Debian stretch (amd64 only).

You might find that even if you don't have the exact Debian version I've built the packages for they work anyway. Mercury has few dependencies so this is quite likely. For example the Debian jessie packages work on my Mint desktop.

The packaged version of Mercury contains a reasonable number of grades for the C backends. It does not contain the Java, C# or Erlang backends. The included grades are.

Depending on the C compiler some packages use "reg" grades rather than "asm_fast" grades.

There are two groups of packages to choose from. The stable version of Mercury's packages begin with "mercury", a more recent snapshot begins with "mercury-rotd".

This Mercury has been bootstrapped (the compiler is built with 3 tag bits and other settings) and separated into multiple packages. It does not support multiple concurrent installation versions, nor do the dynamic libraries support this. As always, make sure that there is no other version of Mercury in your $PATH, you can run into problems.

Okay, hook me up!

First download my GPG key and tell your Debian based system that you trust me. This command means that you are authorising your computer to download any software I publish in this repository, like Debian itself.

cd /tmp
sudo apt-key add paul.asc

Now tell your system where the repository is. Create a new file in /etc/apt/sources.list.d, name it mercury.list and paste in it:

deb DISTRO main
deb-src DISTRO main

Replace DISTRO with either jessie or stretch depending on your OS version:

You haveThen use
Debian 8 (jessie)jessie
Debian 9 (stretch)stretch
Ubuntu 16.04 (xenial)jessie
Ubuntu 18.04 (bionic)stretch
Mint 18jessie
Mint 19stretch

If your OS version isn't listed, then try the jessie packages first, they use the faster low-level-C grades but require gcc-4.8 specifically. If you wish to use "mercury-rotd" the you'll need the "stretch" packages.

Update your packages list.

sudo apt update

Either browse the packages or install mercury-recommended which will install a reasonable set of Mercury packages for most developers.

sudo apt install mercury-recommended
or for a recent ROTD version of Mercury:
sudo apt install mercury-rotd-recommended

Or choose specific packages to install. You can see a list with the command:

apt-cache showsrc mercury

More info

Notes on maintaining these packages are kept on github.