wasmtime

Wasmtime bindings for OCaml
README

OCaml WebAssembly runtime powered by wasmtime

This library let you run WebAssembly modules within OCaml with some
support for wasi for system calls.
It acts as a low-level and typesafe wrapper around the wasmtime C library,
only a subset of the functions are supported for now but it should be enough
to run some basic examples, see the tests directory for details.

Installation

Using Opam

The simplest way to install this library is via opam, this installs both
the C library and the OCcaml bindings.

opam install wasmtime
Building from source

First the wasmtime C library has to be installed. This can either be done
via opam.

opam install libwasmtime

Or this can be done manually.

  • Download the wasmtime c-api library from the github repo.

  • Uncompress the archive and set the LIBWASTIME environment variable to point at them.

wget https://github.com/bytecodealliance/wasmtime/releases/download/v0.22.0/wasmtime-v0.22.0-x86_64-linux-c-api.tar.xz
tar xf wasmtime-v0.22.0-x86_64-linux-c-api.tar.xz
export LIBWASTIME=$PWD/wasmtime-v0.22.0-x86_64-linux-c-api

Once the C library has been installed and the repo has been checked out, the
examples can be rune with dune.

dune runtest

This has been tested with wasmtime v0.21.0 and v0.22.0 on a linux platform.

Install
Sources
v0.0.3.tar.gz
md5=103538f885f81ce645324bea3e045f3e
sha512=6aca83445e2742092e8fb0c1183e3c5325b7584cc78b56744a1309d4129392818a815ad1daecdf050486208248f609a97a9a25b405c37cb6d5c68d0265d164f3
Dependencies
ppx_expect
>= "v0.13.0" & < "v0.15" & with-test
ocaml
>= "4.10"
libwasmtime
>= "0.22.0" & < "0.23.0"
dune
>= "2.7.0"
ctypes
>= "0.5"
base
>= "v0.13.0"
Reverse Dependencies