Public Repository

Last pushed: 2 months ago
Short Description
The goblint static analysis framework
Full Description

goblint  

Setup

Linux

Install opam and then do

git clone https://github.com/goblint/analyzer.git
cd analyzer
make setup

to install OCaml and the latest versions of the dependencies for the current user.
After that you can build goblint:

make

If something goes wrong, take a look at travis-ci.sh for an example setup.
You may now try running goblint: ./goblint tests/regression/04-mutex/01-simple_rc.c.

Mac OS X

The above instructions for Linux work just as well for Mac OS X. Goblint
successfully compiles, but it may fail to parse files. We need cpp in order
to preprocess source files and current versions of the clang frontend will not
work with goblint. You therefore have to do, e.g., brew install gcc (first do xcode-select --install if you don't want to build from source). You can check src/config.ml to see what command is used to call cpp.

Windows/Cygwin

For a goblint binary package, follow these instructions.
For building from source, install Cygwin using setup-cygwin-dev.bat and then do

wget "https://raw.githubusercontent.com/goblint/analyzer/master/scripts/setup-cygwin-dev.sh" && source setup-cygwin-dev.sh

Virtual machine

A ready-to-use virtual machine can be set up using Vagrant:

vagrant up
vagrant ssh
sudo su -
cd analyzer

Docker container

Running goblint in a Docker container is even faster since everything is already installed:

docker pull voglerr/goblint
docker run voglerr/goblint /analyzer/goblint --help

Web frontend

Use make npm to setup the web frontend and start serving on http://localhost:3000.
See its README for details.

g2html

Use make jar to build g2html.jar, which can be used like so

./goblint --html -o result path/to/file.c && firefox result/index.xml
Docker Pull Command
Owner
voglerr