crates/fuzzing/wasm-spec-interpreter/README.md
This project shows how to use ocaml-interop to call into the Wasm spec
interpreter. There are several steps to making this work:
ocaml-interop and a custom OCaml
wrapperThis crate only builds in an environment with:
make (the Wasm spec interpreter uses a Makefile)ocamlopt, ocamlbuild (available with, e.g., dnf install ocaml)ar); currently it is easiest to build the static
libraries in a single environment but this could be fixed in the future (TODO)libgmp, for the OCaml zarith packagegit is used by build.rs to retrieve the repository containing the Wasm
spec interpreter; it is safe to completely remove ocaml/spec to get a new
copycargo build --features build-libinterpret
Use FFI_LIB_DIR=path/to/lib/... to specify a different location for the static
library (this is mainly for debugging). If the build-libinterpret feature is
not provided, this crate will build successfully but fail at runtime.
cargo test --features build-libinterpret