
* update clap, remove unused deps * update grammartek * update pyo3 * update pyo3 * undid clap update * not changing nyx * updated deps * Update more deps, fixes * not needed clippy * fix windows * try to enable deprecated pyproto for pyo3 * unused * moving some things to clap4 after all * initial move to clap 4 * fix clap * more clap4, removed accidental file * fixes, fmt * fix * all fix no play * fix
32 lines
820 B
Markdown
32 lines
820 B
Markdown
# How to use python bindings
|
|
## First time setup
|
|
```bash
|
|
# Install maturin
|
|
pip install maturin
|
|
# Create virtual environment
|
|
python3 -m venv .env
|
|
```
|
|
## Build bindings
|
|
```
|
|
# Activate virtual environment
|
|
source .env/bin/activate
|
|
# Build python module
|
|
maturin develop
|
|
```
|
|
This is going to install `pylibafl` python module into this venv.
|
|
|
|
## Use bindings
|
|
### Example: Running baby_fuzzer in fuzzers/baby_fuzzer/baby_fuzzer.py
|
|
First, make sure the python virtual environment is activated. If not, run `source .env/bin/activate
|
|
`. Running `pip freeze` at this point should display the following (versions may differ):
|
|
```
|
|
maturin==0.12.6
|
|
pylibafl==0.7.0
|
|
toml==0.10.2
|
|
```
|
|
Then simply run
|
|
```
|
|
python PATH_TO_BABY_FUZZER/baby_fuzzer.py
|
|
```
|
|
The crashes directory will be created in the directory from which you ran the command.
|