1
- # Building with make
1
+ # Install Dependencies
2
2
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 >
4
13
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 >
6
21
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
12
22
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 >
17
29
30
+ <details >
31
+ <summary >macOS</summary >
32
+ ```
33
+ brew install opam
34
+ ```
35
+ </details >
18
36
19
- ### Install Dependencies:
37
+ # Build CodeHawk
20
38
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 )
22
43
23
44
```
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
-
29
45
opam init --bare
30
46
31
47
git clone https://github.com/static-analysis-engineering/codehawk.git
@@ -40,7 +56,3 @@ dune build @install
40
56
The Makefiles in the repository are to help CodeHawk's developers
41
57
debug circular module dependencies, they are not intended for users.
42
58
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