Skip to content

Ingramz/analyzer

 
 

Repository files navigation

Stories in Ready Build status Circle CI Gitter

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

About

The goblint static analysis framework

Resources

License

Unknown, Unknown licenses found

Licenses found

Unknown
LICENSE
Unknown
LICENSE.libs

Stars

Watchers

Forks

Packages

No packages published

Languages

  • OCaml 74.5%
  • C 23.2%
  • Shell 1.2%
  • Ruby 0.8%
  • HTML 0.2%
  • Python 0.1%