Public | Automated Build

Last pushed: 8 hours ago
Short Description
The next-generation binary analysis platform from Shellphish at UC Santa Barbara's Seclab!
Full Description


This is a repository to make installing a development version of angr easier.


To set up angr for development, automatically install dependencies, and automatically create a python virtualenv, do:

./ -i -e angr

This will grab and install angr.
You can launch it with:

$ workon angr
(angr) $ ipython
[1] import angr

If you are working on macOS, you have to run the script while in your virtualenv to fix the native libraries in angr. This is necessary, since macOS introduced restrictions for relative paths in dynamic libraries.


Install (docker)

Alternatively, you can use the dockerfile:

$ docker build -t angr - < angr-dev/Dockerfile
$ docker run -it angr


To update angr, simply pull all the git repositories.

./ pull

For repositories that have C components (pyvex), you might have to rebuild.

pip install -e ./pyvex && pip install -e ./simuvex


Git keeps asking me for username and password. Are you trying to steal them from me?

This is because GitHub does not differentiate between "a non-existent repo" and "a private repo" (which they should not), and we cannot correctly handle this in our script right now.

Here are two solutions:

  • Check out angr-dev using `` instead of https.
    This requires you to have a GitHub account.


  • Run the following command instead:
    setsid sh -c 'tty; ps -jp "$$"; ./angr-dev/ <your arguments go here>' < /dev/null
Docker Pull Command
Source Repository