Skip to content

Commit d711c13

Browse files
committed
Address feedback from @Databean
1 parent affb898 commit d711c13

File tree

1 file changed

+35
-23
lines changed

1 file changed

+35
-23
lines changed

CodeHawk/README.md

Lines changed: 35 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,47 @@
1-
# Building with make
1+
# Install Dependencies
22

3-
## System Requirements
3+
<details>
4+
<summary>Ubuntu 22.04+ and Debian 11+</summary>
5+
```
6+
sudo apt update -y
7+
sudo apt install --no-install-recommends \
8+
git ca-certificates \
9+
build-essential opam unzip default-jdk \
10+
pkg-config m4 zlib1g-dev libgmp-dev bubblewrap -y
11+
```
12+
</details>
413

5-
Building codehawk requires the following applications and libraries:
14+
<details>
15+
<summary>Fedora</summary>
16+
```
17+
sudo yum install awk diffutils git gmp-devel opam \
18+
perl-ExtUtils-MakeMaker perl-FindBin perl-Pod-Html zlib-devel -y
19+
```
20+
</details>
621

7-
- Objective Caml (version 4.09 or higher)
8-
- The Findlib / ocamlfind library manager
9-
- The Zlib C library, version 1.1.3 or up
10-
- The Zarith library
11-
- goblint-cil, version 2.0.6
1222

13-
The CodeHawk Tool Suite contains three analyzers that can all be built
14-
individually. All three analyzers have an optional gui that can be built
15-
separately (and that requires additional dependencies to be installed).
16-
The gui is current out-of-date and will require additional work to revive.
23+
<details>
24+
<summary>Arch Linux</summary>
25+
```
26+
sudo pacman -Syu base-devel git opam
27+
```
28+
</details>
1729

30+
<details>
31+
<summary>macOS</summary>
32+
```
33+
brew install opam
34+
```
35+
</details>
1836

19-
### Install Dependencies:
37+
# Build CodeHawk
2038

21-
These commands should work for Ubuntu 22.04+:
39+
Note that on Ubuntu 24.04 you must also pass `--disable-sandboxing` to `opam init`,
40+
or create an AppArmor profile with `userns` permissions. This is also required
41+
if you are running in `docker` without `--privileged`.
42+
[Yes, this is a mess!](https://github.com/containers/bubblewrap/issues/505#issuecomment-2093203129)
2243

2344
```
24-
sudo apt update -y
25-
sudo apt install --no-install-recommends \
26-
build-essential opam unzip openjdk-21-jdk \
27-
pkg-config m4 zlib1g-dev libgmp-dev bubblewrap -y
28-
2945
opam init --bare
3046
3147
git clone https://github.com/static-analysis-engineering/codehawk.git
@@ -40,7 +56,3 @@ dune build @install
4056
The Makefiles in the repository are to help CodeHawk's developers
4157
debug circular module dependencies, they are not intended for users.
4258

43-
Dependencies for other OS flavors:
44-
- Arch Linux [untested]: `sudo pacman -Syu opam`
45-
- Fedora [untested]: `sudo yum install opam diffutils zlib-devel -y`
46-
- macOS [untested]: `brew install opam`

0 commit comments

Comments
 (0)