forked from rems-project/asl-interpreter
-
Notifications
You must be signed in to change notification settings - Fork 2
Installing ASLi and BAP
Kait Lam edited this page Jan 5, 2023
·
1 revision
This will compile and install local versions of ASLi, BAP, and the ASLi plugin for BAP.
-
Install build depends and opam:
sudo apt install python3 pkg-config cmake ninja-build sudo apt install opam
-
Initialise opam and create switch:
opam switch create "name" 4.09.1 opam init opam install merlin # (optional language server for ocaml)
-
Install ASLi:
git clone -b partial_eval git@github.com:UQ-PAC/asl-interpreter.git cd asl-interpreter opam install --deps-only --with-test ./asli.opam dune build cd ..
(This may take a while to compile z3.)
-
Install BAP:
git clone -b aarch64-pull-request-2 git@github.com:UQ-PAC/bap.git cd bap opam install --deps-only --with-test ./opam/opam
- If opam install fails to find or install radare2, try to download and install it manually system-wide, then
opam install --no-depext conf-radare2
and retry.
Now, LLVM should be installed, possibly by opam above. Change the version number below after checking
llc --version
or withllc-<tab>
../configure --enable-everything --disable-ghidra --prefix=`opam var prefix` --llvm-version=14 make && make install cd ..
(This can take around 15 minutes.)
- If opam install fails to find or install radare2, try to download and install it manually system-wide, then
-
Install BAP ASLi plugin:
opam pin ./asl-interpreter/ -k path git clone git@github.com:UQ-PAC/bap-asli-plugin.git cd bap-asli-plugin make
-
BAP should now be usable with ASLi with the method here: https://github.com/UQ-PAC/bap-asli-plugin#use