We are currently developing OTAWA v2.

It is not ready for publication but you can already play with a pre-version.

OTAWA v2 is embedding a new installation that supports OTAWA installation and third-party plug-in installation from web repository: this tool is called otawa-install.py (Python required). Notice that otawa-install.py should only work only for Linux but we hope to quickly adapt it to Mac an Windows.

Before running otawa-install.py, the following dependencies must/may be available:

  • GNU C++ (required)
  • OCAML (required)
  • Python 3
  • Flex, Bison (required)
  • libxml2-dev, libxslt1-dev (required)
  • cmake, git (required)
  • GraphViz (for graph output)

Using otawa-install.py is relatively easy. First download it in the directory that will contain the installation of OTAWA (let name it OTAWA_HOME).

$ python3.XXX ./otawa-install.py
The packages will be installed in /home/casse/tmp/otawa: [yes/NO]: yes

With 3.XXX replaced by your Python version (version 3 is required). This will take a while to install the minimum set of libraries and tools for OTAWA. Be patient…

After that, otawa-install.py command is duplicated in otawa/bin/ and the version in the current directory can be removed.

To get the list of plugins, just type:
$ OTAWA_HOME/bin/otawa-install.py -l

Notice that OTAWA is first delivered alone (no instruction set, no micro-architecture except trivial ones, no ILP solver). You have to use otawa-install.py to install them.

Basically, OTAWA can be used as a set of commands that lie in otawa/bin. To get this command in the PATH, you can augment your PATH variable with:

$ export PATH=$PATH:$PWD/otawa/bin

Notice that otawa‘s directory can be moved around without breaking the installation. One has just to maintain the relative the position of executable, libraries and data.


With WSL

WSL is currently the preferred way to use OTAWA with Windows.

Once the WCSL bash is opened, follow the same process as for usual Linux installation.

This link shows how install WSL on your Windows.

With Cygwin


Current version of Cygwin has a broken version of OCAML. No way for now.

CygWin is good alternative to install OTAWA on Windows.

Name changes in the dependencies packages:

  • libxml2: libxml2-devel
  • libxslt1-dev: libxslt1.1-devel

Then otawa-install.py can be used as is.


Linux-like environment can be obtained from HomeBrew or MacPort.

For the rest, the main procedure described above can be applied.