package goblint
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=2f4f2e25b765452f0e336941f35f6cb396d7c213a2d347abe5d35febc5159b1f
sha512=e96af4cad91f6985c8db93c194925853e96cad0ec1a0d9f4d32bbe16d3e5fa1e305f54be02839f21ba89ad2af0c2d5d7aa819ade221ce097dc4dbd0fcd8c8500
Description
Published: 19 Aug 2022
README
Goblint
Documentation can be browsed on Read the Docs or GitHub.
Installing
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.
Linux
Install opam.
Make sure the following are installed:
git patch m4 autoconf libgmp-dev libmpfr-dev pkg-config
.Run
make setup
to install OCaml and dependencies via opam.Run
make
to build Goblint itself.Run
make install
to install Goblint into the opam switch for usage via switch'sPATH
.
MacOS
Install GCC with
brew install gcc
(first runxcode-select --install
if you don't want to build it from source). Goblint requires GCC while macOS's defaultcpp
is Clang, which will not work.ONLY for M1 (ARM64) processor: homebrew changed its install location from
/usr/local/
to/opt/homebrew/
. For packages to find their dependecies executesudo ln -s /opt/homebrew/{include,lib} /usr/local/
.Continue using Linux instructions (the formulae in brew for
patch libgmp-dev libmpfr-dev
aregpatch gmp mpfr
, respectively).
Windows
Install WSL.
Continue using Linux instructions in WSL.
Other
devcontainer. Select "Reopen in Container" in VS Code and continue with
make
using Linux instructions in devcontainer.Docker (GitHub Container Registry). Run
docker pull ghcr.io/goblint/analyzer:latest
(or:nightly
).Docker (repository). Clone and run
docker build -t goblint .
.Vagrant. Clone and run
vagrant up && vagrant ssh
.
Running
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.
Dependencies (22)
- conf-gcc
-
conf-gmp
>= "3"
- uuidm
-
yaml
>= "3.0.0"
- arg-complete
- cpu
-
sha
>= "1.12"
-
jsonrpc
>= "1.12"
- json-data-encoding
- dune-site
- fpath
-
ppx_blob
>= "0.6.0"
-
ppx_deriving_yojson
>= "3.7.0"
- ppx_deriving_hash
- ppx_deriving
- qcheck-core
-
yojson
>= "2.0.0"
-
zarith
>= "1.8"
-
batteries
>= "3.4.0"
-
goblint-cil
>= "2.0.0" & < "2.0.2"
-
dune
>= "2.9.1"
-
ocaml
>= "4.10" & < "5.0"
Dev Dependencies (5)
-
benchmark
with-test
-
conf-ruby
with-test
-
odoc
with-doc
-
qcheck-ounit
with-test
-
ounit2
with-test
Used by
None