Skip to content

Commit 42bb028

Browse files
committed
docs: add Z3 system library to prerequisites
The prover crate now links against system libz3 instead of compiling from source. Document the install steps for macOS, Ubuntu, and Fedora, and note the bundled-z3 feature flag as a fallback. Signed-off-by: Alexander Watson <zredlined@gmail.com> Made-with: Cursor
1 parent a4d1f97 commit 42bb028

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed

CONTRIBUTING.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,28 @@ Project requirements:
119119
- Rust 1.88+
120120
- Python 3.12+
121121
- Docker (running)
122+
- Z3 solver library (for the policy prover crate)
123+
124+
### Z3 installation
125+
126+
The `openshell-prover` crate links against the system Z3 library via pkg-config.
127+
128+
```bash
129+
# macOS
130+
brew install z3
131+
132+
# Ubuntu / Debian
133+
sudo apt install libz3-dev
134+
135+
# Fedora
136+
sudo dnf install z3-devel
137+
```
138+
139+
If you prefer not to install Z3 system-wide, you can compile it from source as a one-time step:
140+
141+
```bash
142+
cargo build -p openshell-prover --features bundled-z3
143+
```
122144

123145
## Getting Started
124146

0 commit comments

Comments
 (0)