Skip to content
Permalink
master
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?
Go to file
 
 
Cannot retrieve contributors at this time

Clingcon

clingcon CI tests

Clingcon is an answer set solver for constraint logic programs building upon the answer set solver clingo. It extends the high-level modeling language of ASP with constraints over finite domain integer variables.

The latest source release is available under the releases tab. Binary packages can be installed using on of the following package managers:

  • Packages for a wide range of platforms are available on Anaconda
  • Ubuntu users can install packages from our Ubuntu PPA
  • Clingcon's Python module is available on PyPI

Building a release version with conda

conda create -n clingcon -c potassco/label/dev -c conda-forge \
      clingo ninja cmake cxx-compiler
conda activate clingcon
cmake -G Ninja \
      -Bbuild/release \
      -H. \
      -DCMAKE_BUILD_TYPE=Release \
      -DCMAKE_INSTALL_PREFIX="${CONDA_PREFIX}" \
      -DCMAKE_INSTALL_LIBDIR=lib \
      -DCLINGCON_MANAGE_RPATH=Off
cmake --build build/release --target install
clingcon --version

Development

The Makefile is meant for development and sets up cmake to use clang-tidy. It is also possible to create a compile database to use with linting plugins.

conda install -n clingcon -c conda-forge -c programfan \
      compdb libcxx clang-tools
conda activate clingcon
make compdb

With this, plugins like vim-ale should be able to lint the source code while editing.