Documentation can be browsed on Read the Docs or GitHub.
Both for using an up-to-date version of Goblint or developing it, the best way is to install from source by cloning this repository. For benchmarking Goblint, please follow the Benchmarking guide on Read the Docs.
git
, patch
, m4
, autoconf
, libgmp-dev
, libmpfr-dev
and pkg-config
.make setup
to install OCaml and dependencies via opam.make
to build Goblint itself.make install
to install Goblint into the opam switch for usage via switch's PATH
.scripts/bash-completion.sh
for setting up bash completion for Goblint arguments.brew install gcc grep
(first run xcode-select --install
if you don't want to build it from source). Goblint requires GCC while macOS's default cpp
is Clang, which will not work./usr/local/
to /opt/homebrew/
. For packages to find their dependecies execute sudo ln -s /opt/homebrew/{include,lib} /usr/local/
.patch
, libgmp-dev
, libmpfr-dev
are gpatch
, gmp
, mpfr
, respectively).opam install goblint
.make
using Linux instructions in devcontainer.docker pull ghcr.io/goblint/analyzer:latest
(or :nightly
).docker build -t goblint .
.vagrant up && vagrant ssh
.To confirm that building worked, you can try running Goblint as follows:
./goblint tests/regression/04-mutex/01-simple_rc.c
To confirm that installation into the opam switch worked, you can try running Goblint as follows:
goblint tests/regression/04-mutex/01-simple_rc.c
To confirm that the Docker container worked, you can try running Goblint as follows:
docker run -it --rm -v $(pwd):/data goblint /data/tests/regression/04-mutex/01-simple_rc.c
If pulled from GitHub Container Registry, use the container name ghcr.io/goblint/analyzer:latest
(or :nightly
) instead.
For further information, see documentation.
Work on Goblint was supported in part by Deutsche Forschungsgemeinschaft (DFG) (47140942/1480 PUMA, 378803395/2428 ConVeY), ARTEMIS Joint Undertaking (269335 MBAT), ITEA3 project 14014 ASSUME, the Shota Rustaveli National Science Foundation of Georgia FR-21-7973, the Estonian Research Council (IUT2-1, PSG61), and the Estonian Centre of Excellence in IT (EXCITE), funded by the European Regional Development Fund.
We also thank Zulip for providing free Zulip Cloud Standard hosting for the Goblint project. Zulip is an open-source modern team chat app designed to keep both live and asynchronous conversations organized.