Skip to content
Quacode is a Quantified Constraint Satisfaction Problems (QCSP) solver built over the Gecode toolkit.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

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).

You can’t perform that action at this time.