Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Quacode logo


Quacode is a quantified constraint satisfaction problems (QCSP) solver based on Gecode. Quacode is distributed under the MIT license. For any question or bug report, please contact Vincent Barichard (email.


Quantified Constraint Satisfaction Problems are a generalization of Constraint Satisfaction Problems (CSP) in which variables may be quantified existentially and universally. QCSP offers a natural framework to express problems as finite two-player games or planning under uncertainty.


Gecode is a comprehensive toolkit for developing constraint-based systems. It is well documented and source code is freely available. Quacode is based on Gecode, so you need Gecode to compil and run QCSP examples.


As Gecode, Quacode is distributed under the MIT licence. Source code and examples are available for download. You may also grab some binaries to quickly have a look at it.


  • Barichard V., Stephan I., The cut tool for QCSP, Accepted at ICTAI 2014.

Download Quacode

You can get the latest Quacode release from several locations:

Downloadable source and binary archive files

You can grab the last release at the Github release section. You will find some archives of the source files and binaries (the binary packages provide the example programs: Baker, NimFibo, MatrixGame, Connect-Four).

From the Gecode web site

Quacode is provided with the last Gecode release (started from version 4.3.1), you can grab the last release from the Gecode web site.

Latest master sources from Github

You can grab the master version of Quacode:

git clone

These sources are the latest ones (not yet released). It may not compile with the latest Gecode release.

Build Quacode

Depending on the location of the source files (from Gecode web site or from Github) you have to select the right build method.

With source files from the Gecode source tree

To compile Quacode from the Gecode source tree, you first have to install cmake. To setup the compilation process for your environment, you can launch cmake by invoking:

  cmake .

in the toplevel Quacode directory.

By default, 'make install' will install all the files in '/usr/local/bin', '/usr/local/lib' etc. You can specify an installation prefix other than '/usr/local' setting the 'CMAKE_INSTALL_PREFIX' option, for instance cmake -DCMAKE_INSTALL_PREFIX:PATH=$HOME .

Then you can compile the code by invoking


in the toplevel Quacode directory.

After a successful compilation, you can install Quacode library and examples by invoking

  make install

in the build directory.

With source files from Github

Even if you downloaded Quacode from Github, you have to previously get and compiled Gecode. You have to call cmake and provide it the location of the Gecode libraries and sources.

  cmake -DGECODE_BIN=/path/to/gecode/libraries -DGECODE_SRC=/path/to/gecode/sources .

Like every cmake project, you can create a separate build tree to not mix object and source files.

Now that you configured the build tree, you can build it by using make and install the binaries with make install (see previous section for more details).


Quacode is a Quantified Constraint Satisfaction Problems (QCSP) solver built over the Gecode toolkit.







No packages published