Table of contents:
The Dockerfile for CBAT can be found in this directory.
To build the image:
docker build --tag cbat .
To run the container:
docker run -it cbat bash
Before installing, make sure you have the appropriate dependencies installed. First, there is OCaml:
The recommended way to install Ocaml is with OPAM. Instructions on downloading OPAM, and using OPAM to download Ocaml can be found here.
The following dependencies are needed to install Z3:
You can install the latest Z3 Ocaml bindings from the dev repo with:
opam pin add z3 --dev-repo
If you want to install the most recent stable release of Z3 from OPAM instead, you can run:
opam install z3
Next, there is the alpha release of BAP:
Instructions on downloading BAP from the testing repository can be found here.
Then, there are the following OCaml packages:
All of these can be installed with:
opam install core_kernel ounit2 re duneOptionally, you may install Boolector 3.2.1 from here to use with the
--ext-solver-pathoption. For some queries, Boolector may be more performant than the standard Z3.
Then, to build and install the weakest precondition tools, simply run
make in this directory:
To uninstall and clean:
To run oUnit unit tests:
To run oUnit integration tests:
To run oUnit tests with colored output, before running the above test commands, run