Skip to content

Commit

Permalink
Move dependencies to separate file
Browse files Browse the repository at this point in the history
  • Loading branch information
ccadar committed Jul 12, 2024
1 parent 73e118d commit cb8c423
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 26 deletions.
27 changes: 1 addition & 26 deletions build/build-llvm13.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,32 +17,7 @@ You can find detailed instructions in: [Building arbitrary KLEE configurations](
There is no support for uClibc and the POSIX environment under macOS.
KLEE does not work under x86-32.

1. **Install dependencies:** KLEE requires all the dependencies of LLVM (see [here](http://llvm.org/docs/GettingStarted.html#requirements)), and some more. In particular, you should install the programs and libraries listed below. `graphviz/doxygen` are optional and only needed to generate the source code documentation.

Under Ubuntu, use:
```bash
$ sudo apt-get install build-essential cmake curl file g++-multilib gcc-multilib git libcap-dev libgoogle-perftools-dev libncurses5-dev libsqlite3-dev libtcmalloc-minimal4 python3-pip unzip graphviz doxygen
```

Under macOS, run:
```bash
$ brew install curl git cmake python unzip gperftools sqlite3 graphviz doxygen bash
```

You should also install `lit` to enable testing, `tabulate` to support additional features in `klee-stats` and `wllvm` to make it easier to compile programs to LLVM bitcode:

```bash
$ sudo pip3 install lit wllvm
$ sudo apt-get install python3-tabulate
```

Use `--user` for `pip3` to install packages for the current user only:

```bash
$ pip3 install --user lit wllvm
```

and make sure that e.g. `~/.local/bin` (check with `python3 -m site --user-base` on your system) is in your `PATH`.
1. [**Install dependencies**]({{site.baseurl}}/build/dependencies)

2. **Install LLVM 13:** KLEE is built on top of [LLVM](http://llvm.org); the first steps are to get a working LLVM installation. See [Getting Started with the LLVM System](http://llvm.org/docs/GettingStarted.html) for more information.

Expand Down
33 changes: 33 additions & 0 deletions build/dependencies.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
---
layout: default
title: Building KLEE
subtitle: Dependencies
slug: getting-started
---

KLEE requires all the dependencies of LLVM (see [here](http://llvm.org/docs/GettingStarted.html#requirements)), and some more. In particular, you should install the programs and libraries listed below. `graphviz/doxygen` are optional and only needed to generate the source code documentation.

Under Ubuntu, use:
```bash
$ sudo apt-get install build-essential cmake curl file g++-multilib gcc-multilib git libcap-dev libgoogle-perftools-dev libncurses5-dev libsqlite3-dev libtcmalloc-minimal4 python3-pip unzip graphviz doxygen
```

Under macOS, run:
```bash
$ brew install curl git cmake python unzip gperftools sqlite3 graphviz doxygen bash
```

You should also install `lit` to enable testing, `tabulate` to support additional features in `klee-stats` and `wllvm` to make it easier to compile programs to LLVM bitcode:

```bash
$ sudo pip3 install lit wllvm
$ sudo apt-get install python3-tabulate
```

Use `--user` for `pip3` to install packages for the current user only:

```bash
$ pip3 install --user lit wllvm
```

and make sure that e.g. `~/.local/bin` (check with `python3 -m site --user-base` on your system) is in your `PATH`.

0 comments on commit cb8c423

Please sign in to comment.