Skip to content

TimOrtel/analyzer

This branch is 5 commits ahead of, 9102 commits behind goblint/analyzer:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

f29b160 · May 9, 2022
Nov 21, 2021
May 9, 2022
Feb 17, 2022
Feb 1, 2022
May 9, 2022
May 9, 2022
May 9, 2022
May 9, 2022
Feb 2, 2022
May 9, 2022
Sep 14, 2017
May 9, 2022
Jan 24, 2022
May 9, 2022
May 9, 2022
Feb 3, 2020
May 17, 2018
Sep 8, 2021
May 9, 2022
Nov 10, 2021
Nov 25, 2021
Jul 24, 2020
May 7, 2021
Nov 29, 2021
Nov 29, 2021
Feb 22, 2022
Oct 25, 2021
Mar 4, 2020
May 9, 2022
Jul 22, 2020
Nov 25, 2021
May 9, 2022
May 9, 2022
May 9, 2022
May 9, 2022
May 9, 2022
Dec 15, 2021
Jan 17, 2022

Repository files navigation

Goblint

locked workflow status unlocked workflow status docker workflow status Documentation Status Zenodo DOI

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

  1. Install opam.
  2. Make sure the following are installed: git patch m4 autoconf libgmp-dev libmpfr-dev pkg-config.
  3. Run make setup to install OCaml and dependencies via opam.
  4. Run make to build Goblint itself.
  5. Run make install to install Goblint into the opam switch for usage via switch's PATH.

MacOS

  1. Install GCC with brew install gcc (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.
  2. ONLY for M1 (ARM64) processor: homebrew changed its install location from /usr/local/ to /opt/homebrew/. For packages to find their dependecies execute sudo ln -s /opt/homebrew/{include,lib} /usr/local/.
  3. Continue using Linux instructions (the formulae in brew for patch libgmp-dev libmpfr-dev are gpatch gmp mpfr, respectively).

Windows

  1. Install WSL.
  2. Continue using Linux instructions in WSL.

Other

  • opam. Install opam and run opam install goblint.
  • 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.

About

Static analysis framework for C

Resources

License

Citation

Stars

Watchers

Forks

Packages

No packages published

Languages

  • OCaml 64.1%
  • C 30.3%
  • Python 1.7%
  • Shell 1.5%
  • Promela 1.3%
  • Ruby 0.8%
  • Other 0.3%