Welcome to Blaze! Below are the things you'll need to get started. This is assuming you are running a Ubuntu/Debian system, otherwise modifications will need to be made.
- To get ghcup run
curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh
- You can list the available tools and versions from ghcup with
ghcup list
- Currently blaze uses GHC 8.10.7. To install, run
ghcup install ghc 8.10.7
- Due to changes in Stack's support for local dependencies, we currently recommend using Stack 2.7.1 which can be installed with:
ghcup install stack 2.7.1
.
- Install Binary Ninja. You'll need a license that supports headless mode.
- to your
~/.profile
addexport BINJA_PLUGINS=<path-to-binja-plugin-folder>
- Get z3 with
https://github.com/Z3Prover/z3.git
- run
./configure; mkdir build
- run
cd build; make
, thenmake install
- The directory structure should look like
blaze/blaze
,blaze/binaryninja-haskell
,blaze/binary-analysis
- Run
stack build
from the blaze project. - To test Blaze run
stack test
within theblaze
directory.
Distribution A. (Approved for public release; distribution unlimited.)